压缩磁盘上的Dask压缩

问题描述 投票:1回答:1

[目前,我正在一组lz4压缩Parquet文件上的Dash本地群集上工作。读取和写入压缩文件可以正常工作,但是在设置和索引时,随机播放算法会将大量未压缩的数据写入磁盘(数据大于我的内存,因此我在磁盘上使用了内存不足的重排)。

Dask中的混洗是通过partd项目完成的,该项目本身支持使用snappy或lz4进行压缩。但是,我无法激活本地工作人员的压缩和随机播放文件。有什么办法可以使用环境变量或dask.settings?

非常感谢

import dask
import dask.dataframe as dd
from dask.distributed import Client

# setup local cluster
client = Client(n_workers=2, threads_per_worker=4, processes=False, memory_limit='16GB')

# load, set index, save
df = dd.read_parquet('Data/Parquet', engine='fastparquet')  # <-- is compressed
df2 = df.set_index(use_columns, shuffle='disk')  # <-- generates a lot of uncompressed data on the disk
df2.to_parquet('Data/ParquetSorted', engine='fastparquet', compression="lz4")  # <-- again compressed
compression bigdata out-of-memory dask shuffle
1个回答
0
投票

我只是快速浏览了一下代码,今天的答案似乎是“不。这是硬编码的。”这可以更改,但是需要进行一些技术讨论。我鼓励您在https://github.com/dask/dask/issues/new

上提出问题
© www.soinside.com 2019 - 2024. All rights reserved.