• 【Spark工作原理】stage划分原理理解


    Job->Stage->Task
    开发完一个应用以后,把这个应用提交到Spark集群,这个应用叫Application。这个应用里面开发了很多代码,这些代码里面凡是遇到一个action操作,就会产生一个job任务。

    一个Application有一个或多个job任务。job任务被DAGScheduler划分为不同stage去执行,stage是一组Task任务。Task分别计算每个分区partition上的数据,Task数量=分区partition数量。

    Spark如何划分Stage
    会从执行action的最后一个RDD开始向前推,首先为最后一个RDD创建一个stage,向前遇到某个RDD是宽依赖,再划分一个stage。如下图,从宽依赖处划分为2个stage。

    原理的应用场景:
    1.通过监控界面上每个stage及其内部task运行情况,找到对应的代码段做性能调优。

    2.指定RDD的分区数参数,实际也调整了task的数量,在数据量较大时适当调整增加并行度。

  • 相关阅读:
    Bridage
    国内项目测试培训笔录和小结
    Proxy
    数据库设计
    PDF转Word
    机务维修成本技术点
    MyEclipse10
    MyEclips:Struts 2 + Hibernate 4 + SQL Server2008
    观察者模式
    javascript事件设计模式
  • 原文地址:https://www.cnblogs.com/wwcom123/p/10492731.html
Copyright © 2020-2023  润新知