map中的共享变量reduce

时间:2011-08-10 11:20:03

标签: hadoop mapreduce uniqueidentifier

我需要一个在reduce任务之间共享的变量,每个reduce任务都可以原子方式读取和写入。 我需要这样一个变量的原因是为reduce任务创建的每个文件提供一个唯一的标识符(reduce任务创建的文件数量不确定)。

由于

3 个答案:

答案 0 :(得分:1)

在我的理解中,ZooKeeper专门用于维护对群集范围变量的原子访问。

答案 1 :(得分:0)

答案 2 :(得分:0)

Reducer生成的所有outout文件已经具有唯一的名称part-r-00001等。 如果您需要代码中的数字,可以阅读分区编号。

必须保证唯一的集中计数器打破了Hadoop的大量可扩展性。

因此,如果您需要不同的东西,那么我会使用类似于reducer的任务ID的Sha1来获得在多个作业中唯一的东西。