首页 > 解决方案 > 是否可以在单个文件中存储多个组和数组?

问题描述

我一直在使用 HDF5 来存储时间序列数据,由于 Zarr 的各种功能,我想尝试使用它。

我正在阅读它的教程并遵循每一步,我意识到也许 Zarr 使用文件系统上的目录而不是单个文件和其中的层次结构?

例如,当我这样做时:

root = zarr.open('group.zarr', mode='w')
foo = root.create_group('foo')
bar = foo.create_group('bar')
z1 = bar.zeros('baz', shape=(10000, 10000), chunks=(1000, 1000), dtype='i4')

我认为将在文件group.zarr中创建一个名为 2 个组的文件。实际上,它会创建 3 个连续的本地目录。

我更喜欢将数组保存在单个文件中。是否也可以像 HDF5 一样使用 Zarr 在单个文件中创建多个组和数组?

标签: zarr

解决方案


Zarr 目录可以一起压缩成一个 Zip 文件:

7z a -tzip archive.zarr.zip archive.zarr/.

然后可以使用ZipStorezarr.open()读取单个文件,尽管应该为来自.


推荐阅读