如何使用 Hadoop 处理 .gz 输入文件?
How to deal with .gz input files with Hadoop?
请允许我提供一个场景:
hadoop jar test.jar Test inputFileFolder outputFileFolder
其中
test.jar
按键、时间和地点对信息进行排序
inputFileFolder
包含多个.gz文件,每个.gz文件约10GB
outputFileFolder
包含一堆 .gz 文件
我的问题是处理 inputFileFolder 中那些 .gz 文件的最佳方式是什么?谢谢!
Hadoop 将自动检测和读取 .gz 文件。然而,由于 .gz 不是可拆分的压缩格式,每个文件将由单个映射器读取。最好的办法是使用另一种格式,例如 Snappy,或者解压缩、拆分并重新压缩成更小的块大小的文件。
请允许我提供一个场景:
hadoop jar test.jar Test inputFileFolder outputFileFolder
其中
test.jar
按键、时间和地点对信息进行排序inputFileFolder
包含多个.gz文件,每个.gz文件约10GBoutputFileFolder
包含一堆 .gz 文件
我的问题是处理 inputFileFolder 中那些 .gz 文件的最佳方式是什么?谢谢!
Hadoop 将自动检测和读取 .gz 文件。然而,由于 .gz 不是可拆分的压缩格式,每个文件将由单个映射器读取。最好的办法是使用另一种格式,例如 Snappy,或者解压缩、拆分并重新压缩成更小的块大小的文件。