0

我正在尝试使用 s3distcp 来编译很多小的 gzip 文件,不幸的是这些文件没有以gz扩展名结尾。s3distcp 有一个outputCodec可用于压缩输出的参数,但没有对应的inputCodec. 我正在尝试使用--jobconfhadoop 流调用,但它似乎没有做任何事情(输出仍然是 gzip 压缩的)。我正在使用的命令是

hadoop jar lib/emr-s3distcp-1.0.jar -Dstream.recordreader.compression=gzip \
           --src s3://inputfolder --dest hdfs:///data

任何想法可能会发生什么?我正在运行 AWS EMR AMI-3.9。

4

1 回答 1

4

正如您在 s3distcp 代码中看到的那样:https ://github.com/netshade/s3distcp/blob/b899910d04a112019ba695f29d3b0b3d9a785603/src/main/java/com/amazon/external/elasticmapreduce/s3distcp/CopyFilesReducer.java第 197 行,s3distcp 取决于文件扩展名来实例化 InputStream。那么就无法将输入格式设置为参数。

于 2015-09-11T04:33:49.660 回答