如果在Hadoop MapReduce中减速器的输入太大会怎么样?

我想了解在这种情况下该怎么做.
例如,我有1TB的文本数据,并假设它是300GB
这个单词
“你好”.
 在每次映射操作之后,我将拥有一组<“Hello”,1>的键值对.

但正如我所说,这是一个巨大的收藏,300GB,据我所知,减速机得到了所有这些,并将粉碎.

这是什么解决方案?让我们假设组合器在这里不会帮助我(WordCount示例只是为了简单),并且数据对于reducer来说仍然太大了.

中间(Mapper)输出存储在运行映射器任务的节点的本地文件系统中,然后进行清理.请注意,此映射器输出不存储在HDFS中. reducer确实获得了任何特定键的所有中间键值对(即,键’Hello’的所有300 GB输出将由相同的Reducer任务处理).仅在需要时才将此数据带入内存.

希望这可以帮助.

相关文章
相关标签/搜索