Я получил несколько pig
сгенерированных файлов с расширением part-r-00000.deflate
. Я знаю, что это сжатый файл. Как создать обычный файл в читаемом формате. Когда я использовал hadoop fs -text
, я не могу получить вывод из открытого текста. Выход по-прежнему двоичный. Как я могу исправить эту проблему?
Как прочитать файл .deflate в hadoop
Ответ 1
Возможно, вы используете довольно старый вариант Hadoop (например: 0.20.0), в котором fs -text не может раздувать сжатый файл.
В качестве обходного пути вы можете попробовать этот однострочный (на основе этого ответа):
hadoop fs -text file.deflate | perl -MCompress::Zlib -e 'undef $/; print uncompress(<>)'
Ответ 2
вы можете распаковать "на лету" с помощью этой команды
hdfs dfs -text file.deflate | hdfs dfs -put - uncompressed_destination_file