[FEA] 在大规模环境中改进读取 parquet + udf + 分区 parquet 写入
作者: praateekmahajan创建于 2026年9月14日更新于 2026年9月17日
标签feature request? - Needs Triage
想象一下,有数千个 Parquet 文件,其中包含 terabytes 的数据,其中有一列是 `list[float]`,例如每行一个数字向量。用户想要读取数据,执行一个 UDF,并按列进行分区写入结果。大约 20 亿个元素的限制适用于列的子列。每行有 1024 值,DataFrame 可以容纳大约 2100 万行:大约 4 GiB 的 FP16 数据或 8 GiB 的 FP32 数据,不包括偏移量、元数据和临时分配。分区写入增加了分组和编码/压缩分配,其大小取决于工作负载。即使有这些分配,单个批次 **也可以在 80 GB 的 GPU 上留出相当大的空间**。利用这些空间来并行处理批次可以提高吞吐量,但目前仍然需要应用程序负责批处理、内存估计和 I/O 并发。
内容来源: rapidsai/cudf