IT用語集 › データベース › LSM-tree

LSM-tree

データベース Svenska → 更新: 2026-10-21

Log-Structured Merge tree。書き込みの多い現代のデータベースを支えるデータ構造。書き込みはまずRAM(memtable)に入り、ディスク上の不変のソート済みファイル(SSTable)へフラッシュされ、バックグラウンドでコンパクションされる。

O'Neilらが1996年に発表した。書き込みではB木に勝る。ランダムI/Oの代わりにシーケンシャルI/Oを使い、インプレース更新がないためだ。読み取りはやや不利で、複数のレベルを確認する必要があるが、SSTableごとのブルームフィルタで補う。

LevelDB、RocksDB、Cassandra、ScyllaDB、HBase、BigTable、DynamoDB、MongoDBのWiredTiger、FoundationDBの基盤である。調整の要点はtiered型とleveled型のコンパクション、そして書き込み・読み取り・領域の増幅率だ。

← 用語集に戻る