我正在尝试运行bin/hadoop示例-1.0.4.jar排序输入输出
但是得到一个错误"java.io.IOException: hdfs://SequenceFile:9000/usr/ubuntu/input/file1 1而不是SequenceFile“
如果我运行bin/hadoop示例-1.0.4.jar字计数输入输出,它就工作了。
所以我不知道该怎么处理
发布于 2013-04-19 08:44:57
这里的错误信息是完全正确的;sort示例期待一个序列文件 --一个二进制键和值的平面文件作为输入,这类文件通常是作为MapReduce作业的输出生成的。
但是,wordcount示例并不期望序列文件(特别是作为输入),仅仅是一个文本文件,其中的键是偏移量(行号)到文件中,值是行内容。
由于您拥有的输入文件本身不是序列文件,因此sort无法使用它们运行。
发布于 2014-11-04 07:27:45
@Jork,如果您观察到了hadoop-示例-1.0.4.jar中给出的示例排序,您可以通过命令行争用来更改输入和输出格式,或者可以将程序中的SequenceFileInputFormat更改为文本类型。hadoop
发布于 2016-11-17 18:01:54
我也有过同样的问题。在这里,https://wiki.apache.org/hadoop/Sort说:“输入和输出必须是序列文件。”您应该将输入文件转换为hadoop序列文件,我希望有一种更简单的方法。我发现这个教程很有帮助,祝你好运!https://examples.javacodegeeks.com/enterprise-java/apache-hadoop/hadoop-sequence-file-example/
https://stackoverflow.com/questions/16100487
复制相似问题