Spark是基于内存计算的大数据并行计算框架。因为其基于内存计算,较Hadoop中MapReduce计算框架具有更高的实时性,同时保证了高效容错性和可伸缩性。从2009年诞生于AMPLab到现在已经成为Apache顶级开源项目,并成功应用于商业集群中。学习Spark就需要了解其架构及运行机制。

Spark架构Spark架构使用了分布式计算中master-slave模型,master是集群中含有master进程的节点,slave是集群中含有worker进程的节点。
master作为整个集群的控制器,负责整个集群的正常运行。
worker相当于计算节点,接受主节点命令与状态汇报。
executor负责任务的执行。
client作为用户的客户端负责提交应用。
driver负责控制一个应用的执行。

下图为Spark架构图


<ignore_js_op>Spark的运行流程: Client提交应用,master找到一个worker启动driver,driver向master请求资源,之后将应用转化为RDD Graph,再由DAGScheduler将RDD Graph转换为stage的DAG提交给TaskScheduler,由TaskScheduler提交任务给executor。

相关文章:

  • 2021-07-08
  • 2021-04-29
  • 2021-12-24
  • 2022-12-23
  • 2022-12-23
  • 2021-10-25
  • 2022-12-23
猜你喜欢
  • 2021-08-23
  • 2022-12-23
  • 2022-02-19
  • 2021-08-21
  • 2022-12-23
  • 2021-08-02
  • 2022-12-23
相关资源
相似解决方案