我使用GZIP压缩文件设置了第一个Hive表:
CREATE EXTERNAL TABLE table_gzip (
col1,
col2,
col3
)
ROW FORMAT DELIMITED,
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
LOCATION
's3://bucket/files_gzip/';
然后我用ORC格式设置另一个Hive表:
CREATE EXTERNAL TABLE table_orc (
col1,
col2,
col3
)
STORED AS ORC
LOCATION
's3://bucket/files_orc/';
ALTER TABLE table_orc SET tblproperties ("orc.compress" ="SNAPPY");
然后我使用此查询从GZIP解压缩并重新压缩到ORC:
INSERT OVERWRITE TABLE table_gzip SELECT * FROM table_orc
这个查询完成后,我在' s3:// bucket / files_orc /'中有了新的ORC压缩文件。到现在为止还挺好。
然而,当我查看文件时,他们从500个1.2GiB文件转到500个1.6GiB文件。
我做错了什么?为什么我的ORC-SNAPPY压缩文件比原始文件大? GZIP是一种更好的压缩方法吗?
感谢您的时间。