当key不在第一行时如何使用mapreduce:hadoop mapreduce

ubof19bj  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(300)

有谁能告诉我如何在hadoop中使用mapreduce解决下面的问题吗。
假设我有一个如下结构的文件
记录1-值1
记录2-值2
记录3-值3
记录4-值4
记录5-值5
记录6-值6
记录7-键1
记录8–值8
记录9–值9
记录10–值10
记录11–值11
记录12–值12
记录13–值13
记录14–键2
我希望输出是键和值的串联字符串,如下所示
键1值1值2值3值4值5值6
键2值8值9值10值11值12值13

bfhwhh0e

bfhwhh0e1#

是的,根据您的数据和文件的结构和大小,您可以通过多种方式解决问题,也许通过提供更多的信息,我们可以给您一个更准确的答案:
如果同一文件中有相同的字段,则使用combinefileinputformat类。
防止拆分fileinputformat子类并重写issplittable()方法。
您还可以检查keyvaluetextinputformat类,该类允许您使用不同于行偏移量的内容作为键逐行读取文件。可以通过mapreduce.input.keyvaluelinerecordreader.key.value.separator指定分隔符(逗号)
希望有帮助

相关问题