在键值字符串的h5py数据集中缓慢的数据检索

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

给出以下h5py文件root -> group1 -> million key,val pairs:检索任意数量的数据集(甚至1个)都需要非常长的时间(〜10秒),而且我想知道是否可以以不同的方式插入它们以控制该行为(我认为对于我的用例而言,缓存太大了,但是默认情况下大小为1MB)行为如下:

script A

hdf5 = h5py.File(path_to_h5py, libver='latest',mode='a')
hdf5_dataet = hdf5.create_group(name_of_dataset)
for key, val in tqdm(dataset.items()):
    hdf5_dataet.create_dataset(json.dumps(key),data=json.dumps(val))

script B

f = h5py.File(path_to_h5py,'r')
data = f[name_of_dataset]
key_example = next(data.__iter__()) ---------> This takes 10 seconds
python hdf5 h5py
1个回答
0
投票

HDF5不像Python字典那样使用键/值对。数据结构更像NumPy数组。我不知道您最终要做什么。脚本B有一个简单得多的迭代器。请尝试以下操作:

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