Apache Zeppelin在Spark Cluster和YARN上运行

时间:2016-12-01 18:05:12

标签: hadoop apache-spark pyspark apache-zeppelin

我在使用yarn-client的Spark Cluster上运行的Apache Zeppelin中创建并运行了一个%pyspark 程序。程序正在从HDFS读取Dataframe中的文件并执行简单的groupby命令并成功打印输出。我使用的是Zeppellin版本0.6.2和Spark 2.0.0。

我可以看到作业在YARN中运行(参见application_1480590511892_0007): enter image description here

但是当我同时检查Spark UI时,这项工作根本没有任何内容:

enter image description here

问题1 :这两个窗口中是否应该显示此作业?

此外,上面SparkUI图像中已完成的应用程序是带有%python 解释器的Zeppelin作业,只需初始化SparkSession并停止它:

第一个齐柏林飞艇区块:

%python
from pyspark.sql import SparkSession
from pyspark.sql import Row
import collections

spark = SparkSession.builder.appName("SparkSQL").getOrCreate()
第二个Zeppelin区块:

 %python
 spark.stop()

问题2:此作业依次没有出现在YARN UI中。是否就是每当SparkUI中出现一个作业意味着它正在使用Spark Resource manager运行?

对这些问题的任何见解都非常感谢。

1 个答案:

答案 0 :(得分:1)

首次使用解释器时,Zeppelin会运行连续的Spark应用程序。所有段落都将在这一个应用程序中运行。在第二段中,您将停止SparkSession(spark.stop),这样就会终止首次使用解释器时创建的应用程序。因此,您只需在“已完成的应用程序”部分下查看作业即可。如果删除spark.stop,则应该看到“正在运行的应用程序”下列出的作业。