为什么不能使用HashMap保存HBase密钥和相应的地址,所以读取时间复杂度为O(1)?

我知道当前RDBMS使用B树,并且随机密钥的访问时间为O(log(n))。 HBase使用排序的键,访问时间也是O(log(n))。 (因为它使用二进制搜索?)

问这个问题可能很愚蠢,但我想知道为什么我不能使用HashMap保存数据库密钥和相应的磁盘地址,所以读取时间复杂度为O(1)?

我想到的可能原因是 1.太大,无法将哈希图保存在内存中。但是我们可以用几台机器保存吗?还能将哈希图保存在磁盘中吗?

将不胜感激!

ahu3129 回答:为什么不能使用HashMap保存HBase密钥和相应的地址,所以读取时间复杂度为O(1)?

HBase是O(log(n))而不是O(1),因为它具有分布式特性。数据可以位于任何区域中的任何Region Server中,这意味着必须检查每个区域是否包含密钥,并检查密钥是否在区域范围内。

本文链接:https://www.f2er.com/3149725.html

大家都在问