美文网首页
Spark架构相关的术语及其解释

Spark架构相关的术语及其解释

作者: 她雅_b28e | 来源:发表于2019-06-10 14:54 被阅读0次
    • Application(应用程序):指的是用户编写的Spark应用程序,包含了一个Driver功能的代码和分布在集群中多个节点上Executor代码。
    • Driver (驱动器):Spark Applicationmain函数在运行时会创建SparkContext,通常用SparkContext代表Driver,其中创建SparkContext的目的是为了准备Spark应用程序的运行环境。在Spark中由SparkContext负责和ClusterManager通信,进行资源的申请、任务的分配和监控等;当Executor部分运行完毕后,Driver负责将SparkContext关闭。
    • Executor(执行器):Application运行在Worker节点上的一个进程,该进程负责运行Task,并负责将数据存在内存或者磁盘上。每个Application都有各自独立的一批Executor。在Spark on Yarn模式下,其进程名称为CoarseGrainedExecutorBackend,类似与Hadoop MR中的YarnChild。一个CoarseGrainedExecutorBackend进程有且仅有一个executor对象,它负责将Task包装成taskRunner,并从线程池中抽取出一个空闲线程运行Task。,每个CoarseGrainedExecutorBackend能并行运行Task的数量取决于分配给它的CPU的个数。
    • ClusterManager(集群管理器):指的是在集群上获取资源的外部服务,例如:Standalone中的masterYarn中的ResourceManager
    • Worker(工作者):集群中任何可以运行Application代码的节点。Spark on Yarn模式中就是NodeManager节点。
    • Job(作业):包含多个Task组成的并行计算,由Spark action催生,一个Job包含多个RDD及其作用于相应的RDD上的各种操作。
    • Stage(阶段):每个Job会被拆分成多组Task,每组Task被称为Stage,也可被称为TaskSet,一个Job根据宽窄依赖分成多个stage
    • Task(任务):被发送到某个Executor上的工作任务。
    • DAG(有向无环图):RDD及其依赖关系构成的图。
    • DAGScheduler(DAG调度器):根据Job构建基于StageDAG,并提交StageTaskScheduler
    • TaskScheduler(任务调度器):将TaskSet提交给Worker节点集群运行并返回结果。

    相关文章

      网友评论

          本文标题:Spark架构相关的术语及其解释

          本文链接:https://www.haomeiwen.com/subject/chnaxctx.html