监控Spark中的进度和中间结果

时间:2016-03-02 14:00:42

标签: java scala apache-spark listener

我有一个简单的Spark任务,如下所示:

JavaRDD<Solution> solutions = rdd.map(new Solve());
// Select best solution by some criteria

解决例程需要一些时间。对于演示应用程序,我需要在调用rdd.map之前终止每个解决方案的一些属性

我尝试过使用累加器和SparkListener,覆盖了onTaskEnd方法,但似乎只在映射结束时调用,而不是每个线程调用,例如。

sparkContext.sc().addSparkListener(new SparkListener() {
  public void onTaskEnd(SparkListenerTaskEnd taskEnd) {
    // do something with taskEnd.taskInfo().accumulables()
  }
});

如何为每个地图功能结束获取异步消息?

Spark以本地或独立群集模式运行。

答案可以是Java或Scala,两者都可以。

0 个答案:

没有答案