【发布时间】:2019-11-01 07:24:36
【问题描述】:
从 Apache Zeppelin 笔记本界面启动 spark 作业时,它会显示作业执行的进度条。但这一进展究竟意味着什么?有时它会缩小或扩大。是当前阶段的进步还是整个工作?
【问题讨论】:
标签: apache-spark apache-zeppelin
从 Apache Zeppelin 笔记本界面启动 spark 作业时,它会显示作业执行的进度条。但这一进展究竟意味着什么?有时它会缩小或扩大。是当前阶段的进步还是整个工作?
【问题讨论】:
标签: apache-spark apache-zeppelin
在网页界面中,进度条显示getProgress函数返回的值(并非每个interpeters都实现,例如python)。
这个函数返回一个百分比。
使用 Spark 解释器时,该值似乎是已完成任务的百分比(从 JobProgressUtil 调用以下 progress 函数):
def progress(sc: SparkContext, jobGroup : String):Int = {
val jobIds = sc.statusTracker.getJobIdsForGroup(jobGroup)
val jobs = jobIds.flatMap { id => sc.statusTracker.getJobInfo(id) }
val stages = jobs.flatMap { job =>
job.stageIds().flatMap(sc.statusTracker.getStageInfo)
}
val taskCount = stages.map(_.numTasks).sum
val completedTaskCount = stages.map(_.numCompletedTasks).sum
if (taskCount == 0) {
0
} else {
(100 * completedTaskCount.toDouble / taskCount).toInt
}
}
同时,我在 Zeppelin 文档中找不到它。
【讨论】: