Spark工作流程简述

这是参加东软大数据实习的一份平时作业,图片内容来源于课件。

Spark工作流程简述

  1. 用户构建Spark Application的运行环境,启动SparkContext(上下文)
  2. 用户编写程序提交到Master上
  3. Master构建一个有向无环图(DAG)
  4. 根据DAG生成不同的TaskSet任务集
  5. Master上面的Task Scheduler会把任务集分配给若干个Worker节点
  6. worker节点会启动executor进程,从而执行不同的task
  7. worker节点执行完之后,将结果通过集群返回给master
  8. master显示给调用者(客户)

总体过程如下图:

Spark工作流程简述Spark工作流程简述


注意点:

  • 数据可以存储在HDFS(Hadoop分布式文件系统)上,在做transformmations时,不进行真的计算,只是在内存中形成有向无环图DAG;当调用Actions等操作时,才产生真正的计算,根据DAG回溯到最初的数据,开始计算得到结果写回HDFS。如下图所示:

Spark工作流程简述

 

  • 具体的执行的过程会以包含INFO的形式打印出来,可以查看控制台输出,如下图,控制台中打印出了多条INFO信息,就是执行的详细过程。

Spark工作流程简述