使用 pandas.DataFrame.to_parquet 控制行组

ger*_*rit 5 python dataframe pandas parquet

要将镶木地板文件读入多个分区,应使用行组进行存储(请参阅如何使用 dask/dask-cudf 将单个大型镶木地板文件读入多个分区?)。pandas 文档描述了列的分区pyarrow 文档描述了如何编写多个行组。使用pandas DataFrame.to_parquet方法,我可以接口写入多个行组的能力,还是总是写入单个分区?如果是,如何?

虽然数据集很小(目前只有 3 GB),但我想读入多个分区,以便使用 dask 进行后续处理将使用多个核心(我可以重新分区,但这会产生额外的开销)(我可能会处理大约 10 秒的数据集)之后的 GB,仍然很小,但对于 RAM 来说太大了)。

Jul*_*Wgs 7

row_group_size使用 pyarrow 时,您只需提供关键字参数即可。请注意,pyarrow 是默认引擎。

df.to_parquet("filename.parquet", row_group_size=500, engine="pyarrow")
Run Code Online (Sandbox Code Playgroud)