Spark-RDD的依赖

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端口 交互式开发

    程序运行结束后查看 18080端口

    • APP 是计算应用程序
      • job 计算任务 (执行算子 触发计算任务)
        • DAG 管理依赖关系
          • stage 计算步骤的划分
            • task线程 完成该步骤下方法计算
相关推荐
黄雪超5 小时前
从流批一体到湖仓一体架构演进的思考
大数据·架构·数据湖
小坏讲微服务7 小时前
Spring Boot整合Redis注解,实战Redis注解使用
spring boot·redis·分布式·后端·spring cloud·微服务·mybatis
筑梦之人7 小时前
Spark-3.5.7文档1 - 快速开始
spark
Elastic 中国社区官方博客9 小时前
Observability:适用于 PHP 的 OpenTelemetry:EDOT PHP 加入 OpenTelemetry 项目
大数据·开发语言·人工智能·elasticsearch·搜索引擎·全文检索·php
liudongyang1239 小时前
麒麟系统离线安装Rabbitmq
分布式·rabbitmq
冰芒芒13 小时前
Kafka-2 Kafka的特点
分布式·kafka
白鲸开源14 小时前
实战干货:Apache DolphinScheduler 参数使用与优化总结
大数据·程序员·开源
yumgpkpm15 小时前
CMP(类Cloudera CDP 7.3 404版华为Kunpeng)与其他大数据平台对比
大数据·hive·hadoop·elasticsearch·kafka·hbase·cloudera
KYumii15 小时前
RabbitMQ快速上手
分布式·rabbitmq
快乐的流畅15 小时前
iChat:RabbitMQ封装
分布式·rabbitmq·ruby