为什么使用Amazon Athena复制Parquet文件大小会变小

时间:2019-05-16 14:57:59

标签: amazon-web-services amazon-s3 hive parquet amazon-athena

我有一个由Hive填充并以Parquet形式存储在S3上的Hive分区表。特定分区的数据大小为3GB。然后,我用Athena复制副本:

CREATE TABLE tmp_partition
AS SELECT *
FROM original_table
where hour=11

结果数据大小小于一半(1.4 GB)。可能是什么原因?

编辑:相关的配置单元表定义语句:

ROW FORMAT SERDE 
  'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe' 
STORED AS INPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat' 
OUTPUTFORMAT 
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
  's3://...'
TBLPROPERTIES (
  'parquet.compress'='SNAPPY', 
  'transient_lastDdlTime'='1558011438'
)

1 个答案:

答案 0 :(得分:1)

不同的压缩设置是一种可能的解释。如果您的原始文件没有被Snappy压缩或压缩,则可以解释它。如果您未指定使用哪种压缩方式,则雅典娜将默认使用gzip,其压缩率比Snappy好。

如果您想获得更彻底的答案,则必须向我们提供更多详细信息。您是如何创建原始文件的,压缩的文件,压缩的文件,数据是什么样的等等。