【问题标题】:How to find the COMPRESSION_CODEC used on a Parquet file at the time of its generation?如何找到 Parquet 文件生成时使用的 COMPRESSION_CODEC?
【发布时间】:2019-08-20 12:16:26
【问题描述】:

通常在 Impala 中,我们在将数据插入到底层文件为 Parquet 格式的表之前使用 COMPRESSION_CODEC。

用于设置 COMPRESSION_CODEC 的命令:

set compression_codec=snappy;
set compression_codec=gzip;

是否可以通过对 Parquet 文件进行任何类型的操作来找出使用的压缩编解码器的类型?

【问题讨论】:

    标签: hadoop parquet impala


    【解决方案1】:

    您可以通过parquet-tools 找到 Impala parquet 表使用的压缩算法。例如,此实用程序与 Cloudera CDH 一起打包,否则从源代码构建。

    $ parquet-tools meta <parquet-file>
    creator:     impala version 2.13.0-SNAPSHOT (build 100d7da677f2c81efa6af2a5e3a2240199ae54d5)
    
    file schema: schema
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    code:        OPTIONAL BINARY R:0 D:1
    description: OPTIONAL BINARY R:0 D:1
    value:       OPTIONAL INT32 O:INT_32 R:0 D:1
    
    row group 1: RC:823 TS:20420
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    code:         BINARY GZIP DO:4 FPO:1727 SZ:2806/10130/3.61 VC:823 ENC:RLE,PLAIN_DICTIONARY
    description:  BINARY GZIP DO:2884 FPO:12616 SZ:10815/32928/3.04 VC:823 ENC:RLE,PLAIN_DICTIONARY
    value:        INT32 GZIP DO:17462 FPO:19614 SZ:3241/4130/1.27 VC:823 ENC:RLE,PLAIN_DICTIONARY
    

    由于通常在 Parquet(不是通过 Impala)中可以逐列设置压缩,因此对于每个 Parquet 行组,您将看到针对每个列统计信息使用的压缩。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-22
      • 2022-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-16
      • 2021-10-08
      相关资源
      最近更新 更多