I'm writing my own little database engine. Is there any efficient way to implement skipping function other than inspecting every leaf nodes of B+tree, which will be slow with large entries.
質問する
63 次
2 に答える
0
インデックスにB+ツリーを使用している場合、すべての値はリーフに格納されるため、一緒にリンクして(順序付けられた)リンクリスト、または展開されたリンクリストを形成できます。これが、プレーンなBツリーに対するB+ツリーの主な利点です。
とはいえ、展開されたリストで何らかの形のスキップを実行できる場合でも、レコードにスキップリストを実装し、これらのリストのノードをbtree値として使用することを妨げるものは何もありません。
于 2013-03-01T04:51:26.480 に答える
0
2年後ですが、とにかく。カサンドラのやり方でもできます。制限はありませんが、前のクエリの最後のキーを指定します。たとえば、
select * from abc where key > 123 limit 100
123 は前のクエリの最後のキーです
于 2015-02-17T17:58:59.167 に答える