赞
踩
Spark是一种基于内存的快速、通用、可扩展的大数据分析计算引擎。
Spark Core:实现了Spark的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core中还包含了对弹性分布式数据集(Resilient Distributed DataSet,简称RDD)的API定义。
Spark SQL:是Spark用来操作结构化数据的程序包。通过Spark SQL,我们可以使用 SQL或者Apache Hive版本的HQL来查询数据。Spark SQL支持多种数据源,比如Hive表、Parquet以及JSON等。
Spark Streaming:是Spark提供的对实时数据进行流式计算的组件。提供了用来操作数据流的API,并且与Spark Core中的 RDD API高度对应。
Spark MLlib:提供常见的机器学习功能的程序库。包括分类、回归、聚类、协同过滤等,还提供了模型评估、数据 导入等额外的支持功能。
Spark GraphX:主要用于图形并行计算和图挖掘系统的组件。
集群管理器:Spark设计为可以高效地在一个计算节点到数千个计算节点之间伸缩计算。为了实现这样的要求,同时获得最大灵活性,Spark支持在各种集群管理器(Cluster Manager)上运行,包括Hadoop YARN、Apache Mesos,以及Spark自带的一个简易调度器,叫作独立调度器。
Local模式:在本地部署单个Spark服务
Standalone模式:Spark自带的任务调度模式。
YARN模式:Spark使用Hadoop的YARN组件进行资源与任务调度。
Mesos模式:Spark使用Mesos平台进行资源与任务的调度。
官网地址:http://spark.apache.org/
文档查看地址:https://spark.apache.org/docs/2.1.1/
下载地址:https://spark.apache.org/downloads.html
Local模式就是运行在一台计算机上的模式,通常就是用于在本机上练手和测试。
上传并解压Spark安装包tar -zxvfspark-2.1.1-bin-hadoop2.7.tgz -C /opt/module/mvspark-2.1.1-bin-hadoop2.7 spark-local
bin/spark-submit\--class org.apache.spark.examples.SparkPi\--master local[2] \./examples/jars/spark-examples_2.11-2.1.1.jar\10##########--class:表示要执行程序的主类;--masterlocal[2]local: 没有指定线程数,则所有计算都运行在一个线程当中,没有任何并行计算local[K]:指定使用K个Core来运行计算,比如local[2]就是运行2个Core来执行local[*]: 自动帮你按照CPU最多核来设置线程数。比如CPU有4核,Spark帮你自动设置4个线程计算。
spark-shell模式Spark context Web UI available at http://node1:4040
sc是SparkCore程序的入口;spark是SparkSQL程序入口;master = local[*]表示本地模式运行。
运行任务方式说明:
spark-submit,是将jar上传到集群,执行Spark任务;
spark-shell,相当于命令行工具,本身也是一个Application。
说明:本地模式下,默认的调度器为FIFO。
Master和Worker
Driver和Executor
通用运行流程
总结:Master和Worker是Spark的守护进程,即Spark在特定模式下正常运行所必须的进程。Driver和Executor是临时程序,当有具体任务提交到Spark集群才会开启的程序。
Standalone模式是Spark自带的资源调动引擎,构建一个由Master + Slave构成的Spark集群,Spark运行在集群中。
这个要和Hadoop中的Standalone区别开来。这里的Standalone是指只用Spark来搭建一个集群,不需要借助其他的框架。是相对于Yarn和Mesos来说的。
bin/spark-submit\--class org.apache.spark.examples.SparkPi\--master spark://node1:7077 \--executor-memory 2G \--total-executor-cores 2 \./examples/jars/spark-examples_2.11-2.1.1.jar\10
--master spark://hadoop102:7077指定要连接的集群的master
配置Executor可用内存为2G,使用CPU核数为2个
http://IP:8080/,发现执行本次任务,默认采用三台服务器节点的总核数24核,每个节点内存1024M。
8080:master的webUI
4040:application的webUI的端口号
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。