ParquetMetadata
描述
用于读取 Parquet 文件元数据(https://parquet.apache.org/docs/file-format/metadata/)的特殊格式。它始终只输出一行,结构/内容如下:
num_columns- 列的数量num_rows- 行的总数num_row_groups- 行组的总数format_version- Parquet 格式版本,始终为 1.0 或 2.6total_uncompressed_size- 数据的未压缩字节总大小,按所有行组的 total_byte_size 之和计算total_compressed_size- 数据的压缩字节总大小,按所有行组的 total_compressed_size 之和计算columns- 列元数据列表,其结构如下:name- 列名path- 列路径(对嵌套列与列名不同)max_definition_level- 最大定义级别(definition level)max_repetition_level- 最大重复级别(repetition level)physical_type- 列的物理类型logical_type- 列的逻辑类型compression- 此列使用的压缩方式total_uncompressed_size- 列的未压缩字节总大小,按该列在所有行组中的 total_uncompressed_size 之和计算total_compressed_size- 列的压缩字节总大小,按该列在所有行组中的 total_compressed_size 之和计算space_saved- 由于压缩节省的空间百分比,计算公式为 (1 - total_compressed_size/total_uncompressed_size)。encodings- 此列使用的编码列表
row_groups- 行组元数据列表,其结构如下:num_columns- 行组中的列数num_rows- 行组中的行数total_uncompressed_size- 行组的未压缩字节总大小total_compressed_size- 行组的压缩字节总大小columns- 列块元数据列表,其结构如下:name- 列名path- 列路径total_compressed_size- 列的压缩字节总大小total_uncompressed_size- 行组的未压缩字节总大小have_statistics- 布尔标志,指示列块元数据是否包含列统计信息statistics- 列块统计信息(如果 have_statistics = false,则所有字段为 NULL),其结构如下:num_values- 列块中非 NULL 值的数量null_count- 列块中 NULL 值的数量distinct_count- 列块中不同值的数量min- 列块的最小值max- 列块的最大值
使用示例
示例: