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
- 列块的最大值
示例用法
示例: