在我的一个类中,我使用hashmap.im在Map器中调用那个类。所以现在每个Map器都有自己的hashmap。现在我可以将所有的hashmaps使用到一个reducer中吗?实际上,我的hashmap包含key作为文件名,value是set,所以每个hashmap都包含一个文件名和一个set。现在,我想使用包含相同文件名的所有hashmap,并希望合并所有值(集),然后将该hashmap写入我的hdfs文件
在我的一个类中,我使用hashmap.im在Map器中调用那个类。所以现在每个Map器都有自己的hashmap。现在我可以将所有的hashmaps使用到一个reducer中吗?实际上,我的hashmap包含key作为文件名,value是set,所以每个hashmap都包含一个文件名和一个set。现在,我想使用包含相同文件名的所有hashmap,并希望合并所有值(集),然后将该hashmap写入我的hdfs文件
1条答案
按热度按时间fumotvh31#
是的,你能做到。如果Map器以hashmap的形式提供输出,那么可以使用hadoop的
MapWritable
作为你Map的价值。例如。你必须改变你的想法
Hashmap
进入MapWritable
格式:然后为您的上下文提供可写Map:
你上的减速机课
MapWritable
作为您的输入值然后遍历Map并按所需方式提取值。例如: