gpt4 book ai didi

hadoop - 如果我将相同的路径两次添加到 Hadoop 会怎样?

转载 作者:可可西里 更新时间:2023-11-01 14:45:59 27 4
gpt4 key购买 nike

我正在使用弹性 map 缩减。我想知道如果我在 main 方法中两次使用完全相同的行会发生什么。

FileInputFormat.addInputPath(job, new Path( "s3n://mybucket/data/lolcat/*"));

hadoop 会处理同一个文件两次吗?或者它会发现它们是相同的文件并会跳过重复项吗?

最佳答案

这是添加输入路径的来源:


public static void addInputPath(JobConf conf, Path path ) {
path = new Path(conf.getWorkingDirectory(), path);
String dirStr = StringUtils.escapeString(path.toString());
String dirs = conf.get("mapred.input.dir");
conf.set("mapred.input.dir", dirs == null ? dirStr :
dirs + StringUtils.COMMA_STR + dirStr);
}

如您所见,它只是将您的输入附加到 ma​​pred.input.dir 中,而没有查看之前的内容。

此外,getSplits 函数只使用了List,没有使用Set,所以如果你有相同的输入路径 N 次,它将被处理 N次。在 Hadoop 流作业上进行测试,如果我复制相同的输入路径,我会得到两倍数量的映射器。

关于hadoop - 如果我将相同的路径两次添加到 Hadoop 会怎样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16700929/

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