有没有办法在使用资源的火花提交后收集统计数据?

时间:2017-10-18 18:49:17

标签: apache-spark yarn

我正在使用spark和Yarn作为我的资源经理。我正在努力寻找一种方法来收集运行后为工作分配的资源。资源管理器仅报告当前使用情况,因此在完成后它会被清零。

如果我无法得到它们,事实上是否有办法让Spark Job在结束时输出/存储时累积统计数据?

1 个答案:

答案 0 :(得分:1)

尝试使用Spark History Server

查看事实

如果应用程序的事件日志存在,仍然可以通过Spark的历史服务器构建应用程序的UI。您可以通过执行以下命令启动历史记录服务器:

./sbin/start-history-server.sh

默认情况下会在http://<server-url>:18080创建一个网络界面,列出未完成和已完成的应用程序和尝试。

使用文件系统提供程序类时(请参阅下面的spark.history.provider),必须在spark.history.fs.logDirectory配置选项中提供基本日志记录目录,并且应包含每个代表一个子目录的子目录应用程序的事件日志。

必须将spark作业本身配置为记录事件,并将它们记录到同一个共享的可写目录中。例如,如果服务器配置了hdfs://namenode/shared/spark-logs的日志目录,那么客户端选项将是:

spark.eventLog.enabled true
spark.eventLog.dir hdfs://namenode/shared/spark-logs