spark web ui
1. 哪些作业在跑
2. 哪些作业跑完了 ,花费了多少时间和资源
3. 哪些作业失败了
application web ui
application detail ui,其实就是作业driver所在机器的4040端口
可以看到job/、stage/、task的详细信息,shuffle read、shuffle writer、gc、运行时间,每个task分配的数据量
通过它可以定位很多性能问题,troubleshooting等等,task数据分布不均匀,那么就是数据倾斜
哪个stage运行的最慢,通过stage划分算法,就可以去你的代码中定位到,那个stage对应的是哪一块代码,寻找原因,看是否可以性能优化
但是有个问题,当作业运行完了后,这个就看不到了,此时和history server有关,此时得配置history server
日志记录
1. 系统级别的,spark自己的日志记录
2. 我们程序里面,用log4j,或者System.out.println()打印出来的日志
这个默认是在SPARK_HOME/worker目录下的
这个目录下,每个作业都有俩个文件,一个是stdout,一个是stderr,分别代表了标准输出流和异常输出流
stdout可以显示我们用System.out.println打印出来的日志,stderr,可以显示我们用System.err.println打印出来的日志