タグ

b+treeに関するnabinnoのブックマーク (3)

  • MySQLのインデックスですが、B-treeではなくB+treeを使用するのはどうしてなのでしょうか? | mond

    MySQLのインデックスですが、B-treeではなくB+treeを使用するのはどうしてなのでしょうか? 端的に言うと性能が良いからです。 これを理解するにはバッファプールへの理解が必要です。ディスク指向のデータベースの上では有限のメモリを最大限活用することでメモリに入り切らない巨大なデータ群に対して良好な参照性能を出す必要があります。バッファプールとはディスク上のデータの羅列を固定サイズのページ(InnoDBの場合16KB)の羅列であるとして読み書きに必要な分だけをメモリに移し取り複数の書き込みをできる限りメモリ内で受け止めて後でまとめてディスクに書き戻すという、ライトバック型のキャッシュのような機構です。 この中においてバッファプールは有限のサイズしか無いので適宜プール内のデータを書き戻して入れ替えながら上手くやっていく必要があります。 さてB+treeとB-treeの最大の違いは木のリ

    MySQLのインデックスですが、B-treeではなくB+treeを使用するのはどうしてなのでしょうか? | mond
  • ReiserFS - Wikipedia

    ReiserFS(ライザーエフエス)は、Linuxにおけるジャーナリングファイルシステムの実装の一つ。Linux kernel 2.4.1から標準搭載となった。Linuxカーネルのソースコードに取り込まれたはじめてのジャーナリングファイルシステムである。 1996年からハンス・ライザー (Hans Reiser) 率いるNamesys社によって開発されていたが、後継のReiser4の開発に集中するため開発が中止された。2006年にライザーがの殺害容疑で逮捕された後、2008年にNamesys社も廃業し、主要な開発者であったライザーは2008年に懲役15年の判決が下ったため、現在はボランティアベースで開発が進められている。 主な特徴[編集] ext2/ext3ファイルシステムと互換性は無い。 最大16TiBまでのボリュームサイズをサポートする。 最大8TiBのファイルをサポートする。 ex

  • B+木 - Wikipedia

    B+木(英: B+ tree)は、キーを指定することで挿入・検索・削除が効率的に行える木構造の一種である。動的な階層型インデックスであり、各インデックスセグメント(「ブロック」などと呼ばれる。木構造におけるノードに相当)にはキー数の上限と下限がある。B+木はB木とは異なり、全てのレコードは木の最下層(葉ノード)に格納され、内部ノードにはキーのみが格納される。 B+木は、特にブロック型記憶装置での効率的データ検索に効果を発揮する。ブロックサイズ の記憶装置があるとき、 の倍数個のキーを格納するB+木は2分探索木に比較して非常に効率が良い(2分探索木はブロック型でない記憶装置に適している)。 ReiserFS(UNIX、Linux)、XFS(IRIX、Linux)、JFS2(AIX、OS/2、Linux)、HammerFS(DragonFly BSD)、NTFSといったファイルシステムはいずれ

    B+木 - Wikipedia
  • 1