Spark[一]——Spark [Driver、Master、Worker、Executor]
一、背景知识
1.进程
进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体,进程包括程序、数据集合和进程控制块三部分。程序用于描述进程要完成的功能,是控制进程执行的指令集;数据集合是程序在执行时所需要的数据和工作区;程序控制块包含进程的描述信息和控制信息,是进程存在的唯一标识。
2.线程
线程是程序执行中一个单一的顺序执行控制流程,是程序执行流的最小单元,是处理器调度和分派的基本单位。一个进程可以有一个或者多个线程,各个线程之间的共享程序的内存空间(即所在进程的内存空间)。
二、正题——Spark中一些概念
1.Driver进程
Driver是Spark的驱动器节点,用于执行我们提交的Spark程序中的main方法,负责我们提交的Spark实际代码的执行工作。总的来说,Driver就是创建Spark上下文(SparkContext),并对我们提交的这个具体的事务负责(调度、运行、监控),至于Driver负责的具体任务,话不多说直接放个图好了: