Spark Web UI是学习调试spark任务的入口,查看spark UI任务日志也是一项必备技能。
启动pyspark以后,在本地浏览器访问localhost:4040
界面,就会看到spark的任务UI界面,查看各任务的信息。其中IP
和port
可以在pyspark启动的时候进行指定,也可以通过其它方式进行配置。
SparkContext是Spark应用程序的入口。所有的Spark job都从SparkContext启动,也能够只由一个SparkContext构成。
Spark脚本,从SparkContext启动一个spark应用程序,每一个SparkContext都有一个它自己的Web UI。默认端口是4040。Spark UI可以启用/禁用,也可以使用以下属性在单独的端口上启动:
Property
Default value
spark.ui.enabled
True
spark.ui.port
4040
Property | Default value |
---|---|
spark.ui.enabled | True |
spark.ui.port | 4040 |
例如,运行在5050端口上的Spark UI的Spark shell应用程序可以启动为:
pyspark --conf spark.ui.port=5050
如果多个spark脚本程序并行地运行在一个系统中,而没有进行前述的conf参数设置,那么这些应用的Spark UI将会使用从4040起的连续端口(如,4040,4041等等)。
先来两个小demo瞅瞅
demo1
from pyspark import SparkConf, SparkContext
appName = 'testSpark'
def main(sc):
pass
if __name__ == '__main__':
#Configure Spark
conf = SparkConf().setAppName(appName).setMaster('local[2]')
# sc.stop()
sc = SparkContext(conf=conf)
print(sc.version)
main(sc)
在浏览器输入localhost:4040
进入到spark的任务UI界面,查看各任务的信息。
demo2
tmp = [('a'