カテゴリツリーB

B-ツリー

B-ツリー(バランスツリー)およびデータベース・アプリケーションでのB +ツリーインデックスは、何故二分木をしない、バランスのとれた検索木フォークマルチチャネルm考えられるが、理論的には、二分木検索速度と比較の数が最小であることができますか?

私たちは、ディスクIOの影響を考慮する必要があるので、非常に遅いメモリに相対的です。データベースインデックスは、ディスク上に格納され、データの量は、全体的なインデックスは、メモリの全てにロードすることができない場合には、各ディスクページ(インデックスツリーのノードに対応する)ずつロードされことができます。我々はそれが木であるため、IOの数は、ツリーの高さがあり、そして「分厚い」はBツリーの特徴の一つである、IOの数を減らしたいので、各ノードがその最もメートルの子供が含まれ、mはBツリーの順序と呼ばれています、Mサイズはディスク・ページのサイズによって異なります。

定義

M進ツリー定義のB

  1. ルートノードの少なくとも2人の子供があります。
  2. 各中間ノードは、k 1及びk子供の要素を含みますm/2<=k<=m
  3. 各葉ノードは、前記要素のK-1を含有しますm/2<=k<=m
  4. すべてのリーフノードは、同じレベルにあります
  5. 昇順の各ノードの要素、K-1、Kの範囲の要素を含むだけ子パーティション要素となっているノード

例B-ツリー

プロパティ

  1. ツリー全体に分散したキーワードのセット
  2. 任意のキーワードは、一度、一つのノードのみで表示されます
  3. 検索は非リーフノードで終わることがあります
  4. その検索のパフォーマンスは、キーワードを探す全集で半分をやってと同じです
  5. 自動レベル制御

B +ツリー

B +ツリーは、変異型B-ツリーであるマルチウェイの探索木があります

定義

B-ツリーは、実質的に同一の定義、異なる点は次の通りであります:

  1. サブツリーのリーフノードポインタは、キーワードの数と同じではありません
  2. サブツリーポインタPの非リーフノード[i]は、サブツリーのポイントキー([K [i]は、K [I + 1])に属する値(B-ツリーが開区間です)
  3. すべてのリーフノードは、チェーン・ポインタを増やします
  4. すべてのキーワードは、リーフノードに表示されます

プロパティ

  1. すべてのキーワードは、リーフノード(密集指数)のリストに表示され、キーワードのリストを注文することを起こります
  2. 非リーフノードをヒットすることはできません
  3. 索引(インデックススパース)のリーフノードへの非リーフノード相当し、データ記憶層(キーワード)のデータに対応するリーフノード
  4. ドキュメントのインデックス作成システムのためのより適切な

B +ツリー及びB-ツリー比較

これは、分化は、次数mの例としてツリーに起因することストレージ構造を有するBとB +ツリーに起因するものです。

  1. キーワードの異なる数; B +ツリーブランチノードは、m個の子ノードがあるが、リーフノードはまた、キーワードのみ効果の指標を果たしたMを有するM個のキーワードが、Bツリーを持っているが、唯一私たちは、M-1のキーワードを持っています
  2. 異なる場所に格納され、リーフノードに格納されているB +データツリーは、すべてのリーフノードが組み合わされ、すなわちデータは、完全なデータであるが、各ノードでのBツリーに格納されたデータは、それだけではありませんリーフノードに格納されます
  3. ブランチノードの異なる構成; B +ツリー格納キーワード情報のブランチノードのみと息子ポインタのみインデックス情報を格納する内部ノードであること、(ポインタ本明細書中にディスク・ブロックのオフセットを意味します)
  4. 別のクエリ; B +ツリーがどの手段離れルートからリーフまでの検索処理B +ツリーこと、インデックスを介してデータのリーフノードの終了前に発見する必要があります上のBツリー将来的には、特定の値を見つけるためには、それはあります。パスノード

B *ツリー

B * B +ツリーは、ツリーの変種でも、マルチパス探索木であります

定義

次のように実質的に同一のB +ツリーを定義し、異なる点は以下のとおりです。

  1. 非ルートと非リーフノードは、兄弟ノードへのポインタを追加します

例B *ツリー

概要

  1. B-ツリー:複数の探索木、Mキーワードに、各ノード店M / 2は、非リーフノードは、すべてのキーワードの子ノードのキーワード範囲へのポインタは、ツリー全体の部分を表示され、のみ表示されます保存します一度、非リーフノードがヒットすることができます
  2. B +木:インデックスのリーフ・ノードとしてB-ツリーに基づいて、リストのポインタが、リーフノードを高めているリーフノード内のすべてのキーワードが表示され、非リーフノードとリーフノードへのB +ツリーは、常に前ヒット
  3. 非リーフノードリンクリストポインタ増加に基づいて、B +ツリーは、最下位ノードの利用率が2/3に1/2から増加する:B *ツリー

参照

  1. B-ツリーツリーの概要BとB +ツリー
  2. Bツリー関連

おすすめ

転載: www.cnblogs.com/weiweng/p/12486413.html