【发布时间】:2018-02-27 11:41:10
【问题描述】:
我试图了解 Apache Spark 调度程序的工作原理。为此,我设置了一个包含一个主节点和两个工作节点的本地集群。我只提交了一个应用程序,它只是读取 4 个文件(2 个小文件(~10MB)和 2 个大文件(~1,1GB)),加入它们并收集结果。另外,我将这两个小文件缓存在内存中。
我正在使用 FIFO 运行独立集群模式。我已经了解阶段是如何形成的,但我无法弄清楚数据流是如何确定的(箭头)。当我查看 SparkUI 时,我注意到每次,即使阶段以相同的方式形成,箭头(我猜的数据流和控制流)都是不同的。这就像调度程序不确定地工作。
我已经阅读了 Jacek Laskowski 书中的相关章节(关于 DAG 和任务调度程序),但我仍然不清楚控制流是如何确定的。提前感谢您的帮助。
干杯,
吉姆
【问题讨论】:
-
直到现在我才注意到你引用了我的 gitbook! :) 谢谢。如果有任何不清楚的地方,请随时通知我们。
标签: apache-spark scheduled-tasks scheduler