可以在块中读取压缩文件吗?

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

Dask是否能够以块的形式读取压缩文件?

我在阅读.xz文件时收到this notebook中的一些错误,

import dask.bag as db

bag = db.read_text('data/1-input/RC_2018-09.xz', blocksize=100e6).map(json.loads)

ValueError:无法推断使用compression ='xz'压缩的文件的逻辑大小

ValueError:无法对使用compression ='xz'压缩的文件进行分块读取。要读取,请设置blocksize = None

明确设置compression='xz'也会导致错误。

深入挖掘,我看到有关compression.py中xz文件的一些行被注释掉了,所以我想知道这是否已被禁用。

根据xz specs,它确实支持随机访问读取到有限的块大小。

这对我来说并不重要 - 我总是可以解压缩然后运行Dask - 它只会节省一些磁盘空间。

谢谢!

python dask
1个回答
0
投票

XZ确实支持压缩,但在实践中它非常罕见。维护它的成本最终高于使用它,因此维护人员停止维护此功能。如果您有兴趣购买维护,那么这将是受欢迎的,并且可以再次添加它。

© www.soinside.com 2019 - 2024. All rights reserved.