Spark on YARN工作原理
来源:互联网 发布:淘宝店铺插件 编辑:程序博客网 时间:2024/05/12 17:01
转自:http://www.wtoutiao.com/p/2e82G8C.html
Spark on YARN工作原理
MapReduce on YARN的工作流程:加载数据,执行map,shuffle,reduce,将结果写入持久化存储。
Spark on YARN的工作流程:spark中一个job包含多个stage,而非只有map和reduce,application包含多个job。
Spark工作原理
用户通过spark-sumbit提交spark application后,会启动相对应的spark driver进程,从YARN分配得到container,动态的分配executor,spark层面并不能动态的调整从Yarn分配的container资源(container是Yarn分配资源的基本单位,yarn对container分配的资源控制体现在vcore和memory上)。Yarn根据spark.executor.memory和spark.executor.cores等参数指定的要求的大小分配executor运行的container。num-executors指定executor的数量。资源申请成功后,driver进程将spark作业转化为多个stage。每个stage执行一批task(task是最小的计算单元,负责执行一模一样的计算逻辑),stage执行完毕后,会在各节点本地磁盘写入中间结果,调度下一个stage,下一个stage的task输入数据是上一个stage输出的中间结果。
Spark-submit提交任务是对应的相关参数如下:
--driver-memory
--executor-memory
--driver-cores
--executor-cores
--driver-cores
--queue
--number-executors
备注(这些参数spark on Yarn都支持,有些参数比如--total-executor-cores之类的spark standalone和Mesos支持,具体参数支持情况执行spark-submit --help查看)
Executor内存的分配
--executor-memory中指定的内存或者spark.executor.memory默认的内存有三个用途:
1.Task执行用户编写的代码时使用
2.Task通过shuffle获取上一个stage的task输出,进行聚合等操作
spark.shuffle.memoryFraction,默认0.2
3.RDD持久化使用
spark.storage.memoryFraction,默认0.6
- Spark on YARN工作原理
- Spark on Yarn的运行原理
- MapReduce On YARN的工作原理
- Spark on Yarn部署
- Spark on Yarn
- spark on yarn
- spark on yarn
- Spark on Yarn简介
- spark on yarn
- Spark on YARN 部署
- spark on yarn 配置
- spark on yarn
- spark on yarn 安装
- Spark on Yarn 图
- Spark on yarn
- 源码-Spark on Yarn
- Launching Spark on YARN
- Spark On Yarn 知识点
- 数组名与指针的关系?
- Spring之切入点和切面的配置解释
- 进程间通信之:IPC
- 神经网络中的反向传播法——Back Propagation
- 验证码生成算法
- Spark on YARN工作原理
- 山科大oj--编写函数:各位数字之和 (Append Code)
- XML的基本语法(XML实现html的网页布局的简单功能)
- hadoop校验和
- App打包上线需要做什么
- 平分正方形的直线
- 压力测试工具之webbench
- ubuntu下挂载虚拟机硬盘的方法
- VC实现一个库,并用VB(Visual Basic)来调用的方法,包括传递数组的方法