通常在impala中,我们在将数据插入表之前使用压缩编码解码器,表的底层文件是Parquet格式的。用于设置压缩编码解码器的命令:
set compression_codec=snappy; set compression_codec=gzip;
有没有可能找出对Parquet文件进行任何操作时使用的压缩编解码器的类型?
xu3bshqb1#
一种方法,你可以找到压缩算法所使用的 Impala Parquet表是通过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行组,您将看到压缩被用于每个列的统计数据。
1条答案
按热度按时间xu3bshqb1#
一种方法,你可以找到压缩算法所使用的 Impala Parquet表是通过Parquet工具。例如,这个实用程序是与cloudera cdh一起打包的,而不是从源代码构建的。
由于通常在Parquet地板(不是通过 Impala )压缩可以设置一列一列,对于每个Parquet行组,您将看到压缩被用于每个列的统计数据。