这是我用来读取,过滤,然后压缩bzip2中数据的pig脚本,但是我得到的是.deflate文件而不是.bz2。
set output.compression.enabled true;
set output.compression.codec org.apache.hadoop.io.compress.BZip2Codec;
inputFile = LOAD '/dl/myfolder/' using PigStorage('|') AS (col1,col2,col3,col4,col5,clo6,col7,col8,col9,col10);
filteredFile = FILTER inputFile BY col7 is not null;
store filteredFile into '/dl/myfolder/compressdata/' USING PigStorage('|');
Output file /dl/myfolder/compressdata/part-m-00000.deflate
谢谢你的帮助。。
2条答案
按热度按时间lfapxunr1#
请尝试将输出目录名更改为以bz2(或bz)结尾。
u4vypkhs2#
遗憾的是,当我们从pivotal升级到hortonworks时,无法更新此问题。并发现mapreduce.map.output.compress=true mapreduce.output.fileoutputformat.compress=true这些将覆盖会话中的输出格式并始终进行压缩。将它们设置为false之后,我们得到了所需的输出
感谢koji/john为您提供的时间和宝贵的投入。
根据您的建议,我们有更老的设计,所有的东西都使用bzip2,所以在下一次升级中可以更改为lzo:)