码迷,mamicode.com
首页 > 其他好文 > 详细

Spark 运行时相关概念

时间:2021-03-03 12:14:39      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:概念   节点   内存   执行   clu   通信   job   tag   上下文   

Spark 运行时相关概念

从集群的物理层面

  • Master 节点:部署 Cluster Manager的节点

  • Slave 节点:部署 Worker 的节点,每个节点可以有多个 Worker 进程

从进程层面(与所执行的应用无关)

  • Cluster Manager:管理集群的 CPU、内存等资源,为不同的应用分配所需的资源

  • Worker: 接受 Cluster Manager 的调度安排,分配具体的资源给应用程序,生成 Executor。每个Worker可以有多个Executor,但默认值为1

具体的APP执行

  • Driver:向集群提交 Application, 执行其中创建 SparkContext 的 mian 函数的进程
  • Executor:执行切分好的 task ,并把结果缓存在节点的内存和磁盘上。每个 Executor 上可以有多个 task

APP 执行的划分

  • job:每一个 action 算子会生成一个 job
  • stage:每个 job 会被划分为多个 stage,划分依据是否发生了 shuffle(或者说宽窄依赖)
  • task:被分配到 Executor 上执行的单位工作内容,一般有多少个 partition 就会有多少个task

SparkConf、SparkContext、SparkSession 和 StreamingContext

  • SparkConf:Spark运行的配置对象
  • SparkContext:Driver 和集群进行连接和通信的上下文,RDD 编程的入口,Spark 中使用的大多数操作/方法或函数都来自 SparkContext,例如累加器、广播变量、并行化等等
  • SparkSession:Spark 新的入口,内部封装了 SparkContext,其实计算也都由 SparkContext 完成,当需要使用 Spark SQL、Hive、DataFream、DataSet 时应使用 SparkSession 为入口
  • StreamingContext:Spark Streming 的入口,内部封装了 SparkContext,Stream 相当于 unbound 的 RDD

Spark 运行时相关概念

标签:概念   节点   内存   执行   clu   通信   job   tag   上下文   

原文地址:https://www.cnblogs.com/DavonC/p/14471128.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!