如何使用HCatWriter从Pig存储时,在Avro支持的Hive表上启用Snappy压缩

时间:2015-09-18 07:18:53

标签: hive apache-pig avro hcatalog snappy

我有一个我创建的Hive表:

set hive.exec.compress.output=true;
set avro.output.codec=snappy;

CREATE EXTERNAL TABLE my_table (
  aaa     STRING,
  ...
)
STORED AS AVRO LOCATION '/somewhere/my_table';

我现在想通过Pig脚本将数据加载到此表中:

...
do lots of stuff
...
STORE a_bag_of_data INTO 'my_table' USING org.apache.hive.hcatalog.pig.HCatStorer();

到目前为止一切都很好(数据存储在Avro文件中),但我希望使用snappy编解码器进行压缩。

我试图添加(除其他外)

SET hive.exec.compress.output true;
SET avro.output.codec snappy;

到Pig脚本,但它似乎没有任何区别。

如果我使用Hive查询将数据插入表中,我可以在表的基础文件中看到它正在使用snappy压缩。

有没有办法告诉HCatWriter告诉Hive使用Snappy压缩写入表?

感谢您的帮助。

0 个答案:

没有答案