Spark生态系统:
Spark生态系统以 Spark Core 为核心,利用 Standalone,YARN 和 Mesos 等进行资源调度
管理,完成应用程序分析与处理。这些应用程序来自 Spark 的不同组件,如 Spark Shell,
Spark Submit交互式批处理、Spark Streaning实时流处理、Spark SQL 快速查询,MLlib机器学
习、GraphX 图处理等。
Spark SQL是一种结构化的数据处理模块。
Spark Streaming是Spark API核心的一个超高通量的拓展,可以处理实时数据流的数据并进行容错。
MLlib是Spark提供的可扩展的机器学习库。
GraphX在Graphs和Graph-parallel并行计算中是一个新的部分,GraphX是Spark上的分布式图形处理框架,可用于图表计算。
Spark作业工作流程:
(1)注册申请资源构建Spark Application的运行环境,启动SparkContext。
(2)SparkContext向资源管理器(可以是Standalone,Mesos,Yarn)申请运行Executor资源 。
(3) 资源管理器分配Executor,并启动Executor。并且Executor发送心跳给资源管理器 。
(4)Executor向SparkContext申请Task。
(5)SparkContext将应用程序分发给Executor。