Я пытаюсь получить пример Grep в комплекте с CDH для чтения файлов Sequence/Snappy.Modify Grep для разбора файлов Sequence/Snappy
По умолчанию программа выбрасывает ошибки, пытаясь прочитать Sequence/мгновенным файлы:
java.io.EOFException: Неожиданный конец блока в входном потоке на org.apache.hadoop.io.compress. BlockDecompressorStream.getCompressedData (BlockDecompressorStream.java:121)
на org.apache.hadoop.io.compress.BlockDecompressorStream.decompress (BlockDecompressorStream.java:95)
в org.apache.hadoop.io.compress.DecompressorStream.read (DecompressorStream.java:83)
at java.io.InputStream.read (InputStream.java:82)
Поэтому я отредактировал код для чтения файлов последовательности.
Изменено:
FileInputFormat.setInputPaths(grepJob, args[0]);
To:
FileInputFormat.setInputPaths(grepJob, args[0]);
grepJob.setInputFormatClass(SequenceFileAsTextInputFormat.class);
Но я все еще получаю ту же ошибку.
1) Нужно ли мне вручную установить кодек сжатия ввода? Я думал, что считыватель SequenceFile автоматически обнаруживает сжатие.
2) Если мне нужно вручную установить сжатие, я делаю это с помощью «setInputFormatClass» или это что-то, что я установил в объекте «conf»?