簡體   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