new*_*bie 6 hadoop hadoop-yarn apache-spark
我无法弄清楚 Spark 驱动程序和应用程序主程序之间有什么区别。基本上是运行应用程序的职责,谁做什么?
在客户端模式下,客户端机器具有驱动程序,应用程序主节点在集群节点之一中运行。在集群模式下,客户端没有任何驱动程序和应用程序主在同一节点(集群节点之一)中运行。
driver 和 app master 的具体操作是什么?
参考:
根据火花文档
\n火花驱动器:
\n\n\n驱动程序(也称为驱动程序)负责将用户应用程序转换为称为任务的较小执行单元,然后安排它们与执行程序上的集群管理器一起运行。驱动程序还负责执行 Spark 应用程序并将状态/结果返回给用户。
\nSpark Driver 包含各种组件 \xe2\x80\x93 DAGScheduler、\nTaskScheduler、BackendScheduler 和 BlockManager。他们负责将用户代码转换为在集群上执行的实际 Spark 作业。
\n
应用程序主控在哪里
\n\n\n应用程序主机负责单个应用程序的执行。它从资源调度程序(资源管理器)请求容器,并在获得的容器上执行特定的程序。\nApplication Master 只是一个与资源管理器协商资源的代理,然后在获取一些容器后,它确保在容器上启动任务(从调度程序队列中选取)。
\n
简而言之,驱动程序会将您的自定义逻辑转换为阶段、作业和任务。您的应用程序主机将确保从 RM 获取足够的资源,并确保检查容器中运行的任务的状态。
\n正如您提供的参考文献中已经说过的那样,客户端模式和集群模式之间的唯一区别是
\n在客户端中,模式驱动程序将在我们执行/运行 Spark 应用程序/作业的计算机上运行,并且 AM 在集群节点之一中运行。
\n(和)
\n在集群模式驱动程序在应用程序主机内部运行时,这意味着应用程序有更多的责任。
\n参考 :
\nhttps://luminousmen.com/post/spark-anatomy-of-spark-application#:~:text=The%20Driver(又名%20driver%20program,status%2Fresults%20to%20the%20user。
\nhttps://www.edureka.co/community/1043/difference- Between-application-master-application-manager#:~:text=The%20Application%20Master%20is%20responsible,class )%20on%20the%20obtained% 20个集装箱。
\n