【问题标题】:Why accumulator in spark are write-only for worker task?为什么 spark 中的累加器对工作任务是只写的?
【发布时间】:2019-02-25 01:19:41
【问题描述】:

根据累加器的文档:

请注意,工作节点上的任务无法访问累加器的 value()——从这些任务的角度来看,累加器是只写变量。

为什么 spark 为蓄电池提供了这种性质?

【问题讨论】:

    标签: apache-spark bigdata spark-streaming accumulator


    【解决方案1】:

    累加器不是线程安全的。任务完成后,更新累加器值的 DAG 调度程序在单个线程上执行。因此,如果工作节点具有访问(读取)累加器的值,则读取值可能不一致。这就是为什么我认为它是这样设计的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-12
      • 1970-01-01
      • 2016-06-27
      • 2013-11-07
      • 2013-10-02
      • 2014-10-06
      • 1970-01-01
      • 2010-09-30
      相关资源
      最近更新 更多