是否有可扩展的开放地址哈希表?

时间:2015-06-13 16:16:16

标签: hashtable real-time extensible

我在内存中实现了一个键值存储,用作实时服务。它需要快速和低延迟。由于事先不知道元素的数量,因此表格应逐渐增长。我更喜欢开放地址哈希表,因为它们比链接表快得多。但是,开放地址哈希表通常需要偶尔进行非常慢的重新哈希,在此期间服务不可用。这是不可接受的。另一方面,可扩展哈希表通常基于链接,并且比开放地址表慢。

是否有任何哈希表与开放地址表一样快(例如谷歌的密集哈希地图)并且没有大的重新开发费用?

一种简单的方法是使用k个小哈希表的数组,因此rehash开销可以减少到1 / k。但是,这在我的情况下没有意义,因为我需要减少总不可用时间而不是最大不可用时间。如果使用k个小哈希表,虽然最大不可用时间减少到1 / k,但重新发生的频率会更频繁地发生k次。

0 个答案:

没有答案