IBMのBranimir LambovがCassandraを語る
要約
- Cassandra PMCメンバーのBranimir Lambovが、Trie構造を用いたSSTableとmemtableフォーマット、Unified Compaction、そして開発中のACIDトランザクション(Accord)まで、10年にわたるインフラ改善の軌跡を語る。
重要ポイント
- BTI(trie-indexed bigtableフォーマット)は、CassandraのプライマリSSTableインデックスをバイト順trieに置き換えるもので、クエリパフォーマンスとワイドパーティション処理を改善する。2017年にDSE 6でリリースされ、2024年にApache Cassandra 5へコントリビュートされた。
- Cassandra 5のTrie memtableはCEP-57の最初の成果物であり、Cassandraのコアストレージ・検索構造をtrie系の実装に置き換える広範な取り組みの一環。
- Unified Compaction Strategy(同じくCassandra 5)はコンパクションアルゴリズムの学術研究を基に構築され、DataStaxの社内ブランチでは旧来の戦略に比べて桁違いの高密度データを処理した。
- コンパクション並列化のバグにより、リリースビルドでアサーションが無効化された際にデータロスが発生した。レプリケーションによってデータは保全されたが、「重要でないコードパスはない」「切り替え可能なアサーションは信頼できる安全網にならない」という教訓を残した。
- Accordは、CassandraにクロスパーティションのACIDトランザクションをもたらす。パフォーマンスは既存のeventually-consistent操作と同様のスケール特性を持つことが目標とされている。
Hacker Newsコメントレビュー
- 現時点では実質的なHNディスカッションなし。
英語版: Branimir Lambov from IBM on Cassandra · Original source
Next →