Skip to main content
QUICK REVIEW

[論文レビュー] The B-Skip-List: A Simpler Uniquely Represented Alternative to B-Trees

Daniel Golovin|arXiv (Cornell University)|May 5, 2010
Algorithms and Data Compression参考文献 22被引用数 12
ひとこと要約

この論文では、外部記憶領域での効率的な操作を可能にし、操作履歴の痕跡を完全に消去する強力な履歴独立性を備えた、B-木のより単純で一意に表現された代替構造であるB-スキップリストを紹介する。スキップリスト構造と確率的レベル割り当て、ブロックベースのレイアウトを組み合わせることで、検索、挿入、削除、範囲検索においてO(logB n)のI/O操作を達成し、線形空間を確保するとともに、操作履歴のすべての痕跡を確実に消去する。

ABSTRACT

In previous work, the author introduced the B-treap, a uniquely represented B-tree analogue, and proved strong performance guarantees for it. However, the B-treap maintains complex invariants and is very complex to implement. In this paper we introduce the B-skip-list, which has most of the guarantees of the B-treap, but is vastly simpler and easier to implement. Like the B-treap, the B-skip-list may be used to construct strongly history-independent index structures and filesystems; such constructions reveal no information about the historical sequence of operations that led to the current logical state. For example, a uniquely represented filesystem would support the deletion of a file in a way that, in a strong information-theoretic sense, provably removes all evidence that the file ever existed. Like the B-tree, the B-skip-list has depth O(log_B (n)) where B is the block transfer size of the external memory, uses linear space with high probability, and supports efficient one-dimensional range queries.

研究の動機と目的

  • 外部記憶領域用に一意に表現されたデータ構造を設計し、B-木に類似した操作を効率的に行えるようにするとともに、すべての履歴的側帯情報(サイドチャnel)を排除すること。
  • B-トレープのような過去の一意に表現された構造の実装の複雑さを簡素化すること。B-トレープは理論的保証が強くても、複雑な不変条件のため実装が困難である。
  • 削除操作がメモリやディスクのメタデータでさえも痕跡を残さない、強力な履歴独立性を備えたファイルシステムおよびデータベースを実現すること。
  • B-木と同等の性能(定数倍の差異以内)を維持しながら、情報理論的プライバシーを保証すること。

提案手法

  • B-スキップリストは、幾何分布(パラメータ1 - 1/γ)に従う確率的レベル割り当てを用いた階層的スキップリスト構造であり、各要素が複数のレベルに複製される。
  • 各レベルはブロック構造のリストとして格納され、外部記憶領域のブロックがI/Oを管理する。ブロックサイズBはシステムパラメータとして扱われる。
  • 検索パスの解析を逆方向(後向き解析)で行い、『待ち時間パラドックス』を回避するとともに期待されるI/O数を束縛する。これにより、各レベルでアクセスされるブロック数が指数的尾部に確率的に支配されることを示した。
  • メモリ割り当てには可変長キーのハッシュテーブルを用い、高確率で線形空間を使用することを保証する。
  • 集中不等式(例:チェルノフの不等式)を用いた理論的境界の導出により、ノード総数が高確率でO(nγ/(γ−1))であることを示し、γ = Bとすることで線形空間が得られることを示した。
  • 範囲検索はまず検索により開始位置を特定し、その後最下位レベルのリストをスキャンすることで実現され、期待値として追加でO(k/B)のI/Oが発生する。

実験結果

リサーチクエスチョン

  • RQ1B-トレープよりもはるかに実装が簡単でありながら、同等の性能保証を維持する一意に表現されたB-木の類似構造を構築可能か?
  • RQ2確率的レベル割り当てとブロックベースのレイアウトを有するスキップリストベースの構造が、外部記憶領域における検索、挿入、削除操作についてO(logB n)のI/O複雑性を達成できるか?
  • RQ3このような構造が、削除を含むすべての操作履歴の痕跡を確実に消去し、強力な履歴独立性を達成できるか?
  • RQ4検索パスに沿うパーティションサイズの偏りを考慮しても、操作の期待I/O数がO(logB n]で束縛されるか?

主な発見

  • B-スキップリストは、挿入、削除、検索、範囲検索の各操作について、期待I/O数がO(logB n)であり、B-木と定数倍の差異以内で同等の性能を達成する。
  • 検索の期待I/O数は、e²/(e−1) · (⌈logB(N)⌉ + 2)で束縛され、Bの実用的値ではO(logB n)に簡略化できる。
  • 構造は高確率で線形空間を用いる。具体的には、γ = Bとすると、ノード数はnγ/(γ−1) + O(√n log n)に収束し、空間効率が保証される。
  • 解析により、検索パスに沿うパーティション集合サイズの分布がI/Oコストを歪めないことが証明され、後向き解析により『待ち時間パラドックス』を回避した。
  • 範囲検索は期待値として追加でO(k/B)のI/Oが発生する。ここでkは出力サイズである。大規模な範囲に対しては効率的である。
  • 構造は強力な履歴独立性を備える:削除操作の痕跡は一切残らず、最終的なデータ構造は一意に表現され、操作の履歴に関するいかなる情報も漏洩しない。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。