【发布时间】:2025-12-14 18:55:02
【问题描述】:
是否可以在 Python 中从不同进程编写相同的 Parquet 文件夹?
我使用fastparquet。
它似乎有效,但我想知道_metadata 文件如何在两个进程同时写入它的情况下不发生冲突。
为了使其正常工作,我必须使用ignore_divisions=True,这对于稍后在读取 Parquet 文件时获得快速性能并不理想,对吧?
【问题讨论】:
标签: dask parquet fastparquet
是否可以在 Python 中从不同进程编写相同的 Parquet 文件夹?
我使用fastparquet。
它似乎有效,但我想知道_metadata 文件如何在两个进程同时写入它的情况下不发生冲突。
为了使其正常工作,我必须使用ignore_divisions=True,这对于稍后在读取 Parquet 文件时获得快速性能并不理想,对吧?
【问题讨论】:
标签: dask parquet fastparquet
Dask 整合了来自不同进程的元数据,因此它只在其余部分完成后才写入 _metadata 文件,这发生在单个线程中。
如果您使用自己的多处理设置将单独的 parquet 文件写入单个文件夹,则每个文件通常都会写入单个数据文件,而根本不会写入 _metadata。您可以像 Dask 那样收集片段,也可以在数据文件准备好后整合元数据。
【讨论】: