1. spark 整体架构
    这里写图片描述
    spark 四块最重要的:

    1. sparkSql
    2. spark流处理
    3. 机器学习
    4. 图计算
  2. spark 2.0 源码结构
    这里写图片描述
    spark最核心的代码:https://github.com/apache/spark

  3. 分析源码的方法

    1. 从bin 文件夹开始,我们同常会打开一个spark-shell, 提交任务spark-sbumit,
      加入我们执行spark-submit, 那么打开spark-submit
    2. spark-submit 实际上执行了: org.apache.spark.deploy.SparkSubmit 这个类文件
    3. org.apache.spark.deploy.SparkSubmit 的源码路径:core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala
    4. 然后打开:core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala
    5. 这样我们就进入了源码内部
  4. 举例分析—-spark-submit 到底干了什么?

    1. spark-submit 参数检测,添加jar 包
    2. 触发 –class 对应的类,执行我们自己代码的逻辑
    3. 代码逻辑中的每一个acction 操作都会触发 sparkContext 的runJob方法
    4. 随即触发dagScheduler.runJob, runJob 会 调用submitJob, 等待回调结果
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐