繁体   English   中英

使用 dask 将镶木地板文件拆分为较小的块

[英]Split a parquet file in smaller chunks using dask

我正在尝试使用带有以下代码的 DASK 拆分镶木地板文件

import dask.dataframe as pd
df = pd.read_parquet(dataset_path, chunksize="100MB")
df.repartition(partition_size="100MB")
pd.to_parquet(df,output_path)

我在输入中只有一个物理文件,即 file.parquet

该脚本的输出也只有一个文件,即 part.0.parquet。

根据 partition_size 和 chunksize 参数,我应该在输出中有多个文件

任何帮助,将不胜感激

df.repartition(partition_size="100MB")返回一个Dask Dataframe

你必须写:

df = df.repartition(partition_size="100MB")

您可以查看创建的分区数量df.npartitions

此外,您可以使用以下内容来编写镶木地板文件:

df.to_parquet(output_path)

由于 Parquet 文件旨在处理大文件,因此在编写 Parquet 文件时,您还应该考虑使用参数compression=

你应该得到你所期望的

注意:import dask.dataframe as pd编写是误导性的,因为import dask.dataframe as dd是常用的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM