spark中Driver和Application manager有什么区别

new*_*bie 6 hadoop hadoop-yarn apache-spark

我无法弄清楚 Spark 驱动程序和应用程序主程序之间有什么区别。基本上是运行应用程序的职责,谁做什么?

在客户端模式下,客户端机器具有驱动程序,应用程序主节点在集群节点之一中运行。在集群模式下,客户端没有任何驱动程序和应用程序主在同一节点(集群节点之一)中运行。

driver 和 app master 的具体操作是什么?

参考:

kav*_*eja 8

根据火花文档

\n

火花驱动器:

\n
\n

驱动程序(也称为驱动程序)负责将用户应用程序转换为称为任务的较小执行单元,然后安排它们与执行程序上的集群管理器一起运行。驱动程序还负责执行 Spark 应用程序并将状态/结果返回给用户

\n

Spark Driver 包含各种组件 \xe2\x80\x93 DAGScheduler、\nTaskScheduler、BackendScheduler 和 BlockManager。他们负责将用户代码转换为在集群上执行的实际 Spark 作业。

\n
\n

应用程序主控在哪里

\n
\n

应用程序主机负责单个应用程序的执行。它从资源调度程序(资源管理器)请求容器,并在获得的容器上执行特定的程序。\nApplication Master 只是一个与资源管理器协商资源的代理,然后在获取一些容器后,它确保在容器上启动任务(从调度程序队列中选取)。

\n
\n

简而言之,驱动程序会将您的自定义逻辑转换为阶段、作业和任务。您的应用程序主机将确保从 RM 获取足够的资源,并确保检查容器中运行的任务的状态。

\n

正如您提供的参考文献中已经说过的那样,客户端模式和集群模式之间的唯一区别是

\n

在客户端中,模式驱动程序将在我们执行/运行 Spark 应用程序/作业的计算机上运行,​​并且 AM 在集群节点之一中运行。

\n

(和)

\n

在集群模式驱动程序在应用程序主机内部运行时,这意味着应用程序有更多的责任。

\n

参考 :

\n

https://luminousmen.com/post/spark-anatomy-of-spark-application#:~:text=The%20Driver(又名%20driver%20program,status%2Fresults%20to%20the%20user。

\n

https://www.edureka.co/community/1043/difference- Between-application-master-application-manager#:~:text=The%20Application%20Master%20is%20responsible,class )%20on%20the%20obtained% 20个集装箱。

\n