gpt4 book ai didi

hadoop - 如何将 mapreduce 输出存储在不同的节点中???

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

我想将分类数据存储在 hadoop 的不同节点中。

例如:

Node - 1 >> Animal.txt
Node - 2 >> Sports.txt
Node - 3 >> Life.txt
.
.
.
Node - n >> nnnnn.txt

有没有办法做到这一点。

**抱歉,如果我的描述不力。

最佳答案

也许可以对数据进行分区,使每个子集(动物、运动、生命)都位于同一节点的本地,尽管您无法可靠地选择存储它们的物理节点的标识。

只要您能以编程方式将每条记录识别为集合的一部分(在您的案例中是动物、运动、生活等),那么您就可以实现自己的 Partitioner .这类似于实现哈希函数,其中具有相同哈希码的所有键都将由同一个缩减器缩减。

[原始输入] -> [身份映射器] -> [你的自定义分区器] -> [身份缩减器]

正如其他用户提到的,HDFS 默认会将输出数据复制到其他节点。因此,如果您想保证数据局部性,则在这种情况下必须禁用复制。当然,这是以容错为代价的。

关于hadoop - 如何将 mapreduce 输出存储在不同的节点中???,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7950789/

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