本文主要是介绍Spark Worker原理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Master发送LaunchDriver和LaunchExecutor到Worker
LaunchDriver
-DriverRunner
内部使用Thread来处理Driver的启动。
1.创建Driver在本地文件系统的工作目录。
2.封装好Driver的启动Command,并通过ProcessBuilder来启动Driver。
3.Driver进程
LaunchExecutor
-ExecutorRunner
内部使用Thread来处理Executor的启动
创建Executor。
1.创建Executor的在本地文件系统的工作目录
2.封装启动Executor的Command,并使用ProcessBuilder来启动Executor
3.Executor进程
Executor进程要向Driver注册给SchedulerBankend
一、Worker启动Driver
1.Cluster中的Driver失败的时候,如果supervise为true,则启动该Driver的Worker会负责重新启动该Driver
2.DriverRunner启动进程是通过ProcessBuilder中的process.get.waitFor来完成。
这篇关于Spark Worker原理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!