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
- 最大定义级别max_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_count
- 列块中的 NULL 值数量distinct_count
- 列块中不同值的数量min
- 列块的最小值max
- 列块的最大值
示例用法
示例: