在 pyarrow 中,parquet writer 具有
data_page_version
参数,该参数可以是“1.0”或“2.0”,默认值为“1.0”。我有时用“2.0”保存文件,因为“嘿,更高的版本一定更好,对吧?”。其他时候我懒得设置该选项,所以我使用默认值。我在使用 Polars、pyarrow、duckdb(偶尔)或 Azure Synapse 时从未注意到差异或遇到问题。
apache parquet 网站没有提及任何有关数据页版本的信息
pyarrow write_table文档只是说它不会影响类型等,但没有说它如何重要。
数据页版本的重要性/特点/缺陷是什么?
如果您对答案投反对票,那么至少可以提供评论,否则不要投反对票
你是对的,由于版本号较高,在 pyarrow 的 parquet writer 中将
data_page_version
设置为“2.0”似乎是更好的选择。然而,实际上,选择取决于几个因素,而并不总是取决于哪个版本较新。这是一个细分:
总之,
data_page_version="1.0"
和 "2.0"
之间的选择取决于您的具体需求和优先事项。 对于大多数常见用例,特别是当兼容性和简单性很重要时,坚持使用默认的 1.0 是完全可以的。如果您需要版本 2.0 的特定功能或要使您的文件面向未来,请考虑使用 2.0,但要注意潜在的兼容性问题和性能影响。
很高兴到目前为止您在使用这两个版本时都没有发现任何问题,但请记住,不同的用例和软件版本可能会有不同的行为。始终选择最能满足您的特定需求和优先级的版本,同时考虑兼容性和潜在的缺点。