Dataproc集群Python Notebook运行Spark任务未在YARN显示的原因咨询
问题原因与解答
一、YARN UI/命令行看不到Python3 Notebook任务的原因
- PySpark Notebook是Dataproc预配置的环境,启动时会自动以YARN集群模式初始化Spark应用:驱动程序(Driver)运行在YARN管理的ApplicationMaster容器中,因此YARN会将其作为正式应用追踪,能在
yarn application --list和YARN UI中看到。 - Python3 Notebook中,手动初始化SparkSession(如
SparkSession.builder.getOrCreate())默认采用YARN客户端模式:驱动程序直接运行在主节点的Jupyter进程内,而非YARN托管的容器。YARN的应用列表仅展示由其管理的ApplicationMaster对应的应用,因此客户端模式的任务不会出现在yarn application --list或YARN UI中。但Spark历史服务器会收集所有Spark作业的运行日志(无论集群/客户端模式),所以任务完成后能在历史服务器中查到记录。
二、Python3 Notebook是否仅单节点运行?
不是。即使是YARN客户端模式,Spark作业的执行器(Executor)仍会被YARN调度到集群的工作节点上运行,作业是分布式执行的。你可以通过Spark历史服务器查看作业的Executor分布信息,确认任务是否利用了多个工作节点的资源。
内容的提问来源于stack exchange,提问作者Matthew
相关产品推荐
相关产品推荐

