我想将一个文本文件作为mapper的输入并输出一个序列文件。如何写一个简单的map-reduce作业呢?文本文件将具有制表符分隔值。
例如输入:group1 1 2 3 4 5
对于这样的输入,我想创建输出序列文件,其键的“group1”和它的值应该是1 2 3 4 5的向量。
我怎样才能写这些工作? 此外,我觉得在这种情况下我不需要减速机。在这种情况下如何编写身份减少器工作?我可以跳过写减速器工作吗?
感谢任何帮助。 问候。
答案 0 :(得分:0)
是的,你可以跳过写Reducer
。将其设置为Reducer.class
。同时致电setNumReduceTasks(0)
。您的Mapper
应使用TextInputFormat
并将Long
,Text
作为键/值输入。 Text
就是这条线。根据需要进行分解并输出键/值,例如Text
和Text
。指定SequenceFileOutputFormat
来编写序列文件。
我仍然不知道你为什么要这样做,但你就是这样做的。