gpt4 book ai didi

python - HDFStore:将数据附加到现有表和重新索引与创建新表之间的效率

转载 作者:太空宇宙 更新时间:2023-11-03 12:02:10 25 4
gpt4 key购买 nike

我在平面文件中有数 TB 的数据(在子集中),我想使用 Python Pandas/Pytables/H5py 将这些数据转换为 HDF5 以加快查询和搜索速度。我计划使用 to_hdf 之类的方法转换数据的每个子部分,并将它们存储在 HDFStore 中。

虽然存储的数据永远不需要更改,但我可能需要稍后将数据附加到某些特定的子部分,然后重新索引(用于查询)整个部分。

我的问题是:将数据附加到现有表(使用 store.append)然后重新索引新表是否更有效,或者我应该简单地用数据创建一个新表我需要追加?

如果我选择后者,我可能会在 HDSFStore 中创建很多(超过 100k)个节点。这会降低节点访问时间吗?

我尝试查看其他答案并创建了我自己的带有一堆节点的商店以查看是否有效果,但我找不到任何重要的东西。感谢您的帮助!

最佳答案

我不知道您的 HDF5 文件中有很多节点有什么问题。文件中的组数没有限制 ( https://support.hdfgroup.org/HDF5/faq/limits.html )。

您还可以调整数据集的大小,但速度和空间性能将取决于分配方法(连续与分块)。在用户指南中阅读相关信息: https://support.hdfgroup.org/HDF5/doc/UG/HDF5_Users_Guide-Responsive%20HTML5/HDF5_Users_Guide/Datasets/HDF5_Datasets.htm?rhtocid=5.3#TOC_5_5_Allocation_of_Spacebc-15

h5py 实现允许分块以及默认的连续。

关于python - HDFStore:将数据附加到现有表和重新索引与创建新表之间的效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45548520/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com