如果数据集有一列包含大量二进制数据(例如图像或声波数据),那么计算该列的最小/最大统计数据在计算和存储需求方面都会变得昂贵,尽管完全无用(显然按范围查询这些值没有意义)。
这会导致大型、高度分区的 parquet 数据集的元数据规模呈爆炸式增长。有没有办法告诉 fastparquet不计算某些列的统计信息,或者 Parquet 格式是否要求每列都存在这些统计信息?
如果数据集有一列包含大量二进制数据(例如图像或声波数据),那么计算该列的最小/最大统计数据在计算和存储需求方面都会变得昂贵,尽管完全无用(显然按范围查询这些值没有意义)。
这会导致大型、高度分区的 parquet 数据集的元数据规模呈爆炸式增长。有没有办法告诉 fastparquet不计算某些列的统计信息,或者 Parquet 格式是否要求每列都存在这些统计信息?
这是在一个陈旧的 PR中实现的,它可以在某个时候合并(它破坏了与 py2 的兼容性),或者可以提取相关部分。PR 为stats=
writer 提供了一个 arg,可用于选择哪些列计算了它们的最大/最小值,或者选择所有/无为真/假。