gpt4 book ai didi

hadoop - map/reduce 中的静态对象

转载 作者:可可西里 更新时间:2023-11-01 15:07:39 25 4
gpt4 key购买 nike

我试图在 hadoop 中使用静态对象。该对象在 map 和 reduce 中都使用。我的程序是:

  1. 阅读 100000 行,因此 100000 张 map 。
  2. 对于每个映射器,此对象的静态属性加 1。
  3. 对于每个reducer,这个静态属性被写为reducer的值,因此V2在

测试结果是,在reducer启动之前,mapper中的静态对象已经被清理干净了。此外,reducer中的静态对象在不同的​​tasktracker之间似乎并不相同,因此无法累加不同reducer的结果。

我的问题是,如何使用静态对象并在不同的 tasktracker 之间保持相同。

最佳答案

默认情况下,每个 mapper 和 reducer 都在自己的 JVM 中运行,因此显然静态不会在整个集群中是全局的。如果您想累积全局计数,请使用 Hadoop 计数器:

reporter.incrCounter("My custom counters", "my counter", 1);

关于hadoop - map/reduce 中的静态对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5386001/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com