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

Hive 使用HCatWriter从Pig存储时,如何在Avro支持的配置单元表上启用Snappy压缩,hive,apache-pig,avro,hcatalog,snappy,Hive,Apache Pig,Avro,Hcatalog,Snappy,我创建了一个蜂巢表,如下所示: 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_o

我创建了一个蜂巢表,如下所示:

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编解码器对其进行压缩

我试图补充(除其他外)

对猪的剧本来说,这似乎没有什么区别

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

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


谢谢你的帮助。

谷歌搜索“pig avro compression”怎么样?并检查有关??Hi Samson的结果。谢谢你的回复。我确实看到了那个问题页面。当通过HCatalog写入配置单元表时,它们提到的两个参数对输出没有任何影响。我认为它们在直接从Pig写入Avro文件时更有用(这是我目前正在解决的问题,但我可以看到在两个不同的位置维护模式会有点困难)。事实上,Samson,你是对的。我只是再次这样做以确保设置这两个参数是有效的。不知道我第一次吸的是什么。谢谢。
将shoot.my.left.foot.while.cleaning.up.keyboard设置为True
>无错误消息。嗯。
SET hive.exec.compress.output true;
SET avro.output.codec snappy;