我正在编写我自己的小数据库引擎。除了检查B+tree的每个叶节点之外,是否有任何有效的方法来实现跳过功能,这在大条目时会很慢。
发布于 2013-03-01 12:51:26
如果您使用B+tree作为索引,那么所有的值都存储在叶子中,因此可以链接在一起形成一个(有序的)链表,或者更确切地说,是一个unrolled linked list。这是B+树相对于普通B树的主要优势。
也就是说,即使展开的列表允许您执行某种形式的跳过,也不会阻止您在记录上实现skip lists,并使用这些列表的节点作为您的btree值。
发布于 2015-02-18 01:58:59
两年后,但不管怎样。你也可以用Cassandra的方式来做。没有限制,但您可以指定上一个查询中的最后一个键,例如
select * from abc where键> 123 limit 100
其中123是上一个查询的最后一个键
https://stackoverflow.com/questions/15150106
复制相似问题