对数结构合并树键查找复杂度

时间:2018-09-21 12:31:32

标签: tree time-complexity lookup

我目前正在研究O'Neil等人描述的Log-Structured-Merge树。等 我对LSM树中最差的查找复杂性尚不完全了解。驻留在磁盘空间上的组件将数据存储在B树中吗?

作为论文的状态:

  

通常,为了保证   已经检查了LSM树,需要进行精确匹配查找   或范围查找以通过其索引访问每个组件(C_n)   结构。

这向我表明,通过磁盘空间中最坏情况下的Cn组件进行的查找是O(n)。

但这只是遍历组件,而不是遍历键值对的组件内部。由于键值对存储在B树中,查找复杂度为O(log n),这是否意味着LSM树中的查找复杂度为O(n log n)?

1 个答案:

答案 0 :(得分:0)

我认为,您正在混合组件的数量(我们称其为M)和每个组件的数据点数量,让所有组件的最大值为N。

则复杂度为O(M * log(N))。

通常,LSM树的M = 2,因此查找的复杂度对应于单个树中的查找的复杂度:O(log(N))。