【发布时间】:2016-06-27 11:26:08
【问题描述】:
我决定使用 HDF5 的层次结构而不是依赖文件系统将我的数据存储在 HDF5 中。 很遗憾,我遇到了性能问题。
我的数据格式如下: 我有大约 70 个顶级组,对应于日期,每个组包含大约 8000 个数据集。 我想查看每天数据集数量的列表:
for date in hdf5.keys():
print(len(hdf5[date]))
我发现这需要 2 秒以上/迭代,这有点令人沮丧。
另外,我有两个具有上述布局的不同 hdf5 文件,而较大的文件在这方面要慢得多。
我做错了什么?
【问题讨论】:
-
如果您真的只想查看文件中有哪些数据集,我会使用
h5dump或h5stat实用程序。例如h5stat --dset <file>将打印文件中所有数据集的信息。如果您想要不太详细的信息,只需使用h5dump -n <file>,它将打印一般文件内容,类似于ls -l。 -
@bnaecker:我实际上正在寻找 python 中的解决方案。但是运行 h5stat --dset 需要 4 分 10 秒 :(