RDD的依赖
rdd之间是有依赖关系
- 窄依赖
- 每个父RDD的一个Partition最多被子RDD的一个Partition所使用
- 父rdd和子rdd的分区是一对一
- map
- flatMap
- fliter
- 宽依赖
- 父RDD的Partition会被多个子RDD的Partition所使用
- 父rdd和子rdd的分区是一对多
- grouBy()
- grouByKey()
- sortBy()
- sortByKey()
- reduceBykey()
- distinct()
rdd1 --> rdd2 -->rdd3
-
Spark中有DAG管理依赖关系
- DAG叫做有向无环图,是一个图计算算法。
- 管理rdd依赖关系,保证rdd按照依赖关系进行数据的顺序计算
- 会根据rdd的依赖关系将计算过程分成多个计算步骤,每个计算步骤称为一个stage
- 在计算的rdd依赖关系中,一旦发生了宽依赖,就会进行步骤拆分
-
日志查看依赖关系和计算流程
服务启动: /export/server/spark/sbin/start-history-server.sh
程序运行期间查看 4040端口 交互式开发文章来源:https://www.toymoban.com/news/detail-812877.html
程序运行结束后查看 18080端口文章来源地址https://www.toymoban.com/news/detail-812877.html
- APP 是计算应用程序
- job 计算任务 (执行算子 触发计算任务)
- DAG 管理依赖关系
- stage 计算步骤的划分
- task线程 完成该步骤下方法计算
- stage 计算步骤的划分
- DAG 管理依赖关系
- job 计算任务 (执行算子 触发计算任务)
- APP 是计算应用程序
到了这里,关于Spark-RDD的依赖的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!