我需要一个可在所有映射器和缩减器之间访问的共享(全局)变量。 Mappers只是从中读取值,但reducers会更改一些值,以便在下一次迭代中使用。我知道DistributedCache是一种技术,但它只支持读取共享值。
答案 0 :(得分:3)
这正是构建ZooKeeper的原因。 ZooKeeper可以跟上来自mappers / redurs的大量读取,并且仍然能够偶尔写一些东西。
另一种选择是set values in the configuration object。但是,这仅在全球范围内持续存在于单个作业中。您必须自己管理这个值在作业中的传递。此外,您无法在作业运行时结束此操作。