gpt4 book ai didi

hashtable - Berkeleydb - B 树与哈希表

转载 作者:行者123 更新时间:2023-12-02 22:32:15 26 4
gpt4 key购买 nike

我试图了解在使用 BerkeleyDB 时应该选择哪些访问方法:B 树与哈希表。哈希表提供 O(1) 查找,但插入成本很高(使用线性/可扩展哈希,我们可以为插入分摊 O(1))。但 B 树提供 log N(以 B 为底)查找和插入时间。 B-Tree 还可以支持范围查询并允许按排序顺序访问。

  1. 除了这些考虑因素之外,还应该考虑哪些因素?
  2. 如果我不需要支持范围查询,我可以只使用哈希表访问方法吗?

最佳答案

当您的数据集变得非常大时,B 树仍然更好,因为大多数内部元数据可能仍然适合缓存。哈希本质上(数据的均匀随机分布)本质上是对缓存不友好的。也就是说,一旦数据集的总大小超过工作内存大小,哈希性能就会急剧下降,而 B 树性能则会优雅地下降(实际上是对数)。

关于hashtable - Berkeleydb - B 树与哈希表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4129326/

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