【ろっくすでぃーびー】
RocksDB とは?
最終更新:
💡 アプリの中で、キーと値を保存するデータエンジン
Facebook(現Meta)で開発が始まった、LSMツリーを使う組み込み型の永続キーバリューストア。アプリケーションにライブラリとして組み込み、キーと値を保存する。
📌 このページのポイント
RocksDBって、どんなデータベースなの?
キーと値の組でデータを保存する、組み込み型のキーバリューストアだよ。Facebookで開発が始まり、LevelDBを基に発展したものなんだ。
組み込み型ってどういうこと?
書き込みはどう進むの?
メモリ上のMemTableに変更をためて、SSTファイルへ書き出すよ。障害後の復旧に使うWALというログにも、設定に応じて記録するんだ。メモリに置くだけで安全に保存できる、という意味ではないよ。
コンパクションって何をするの?
SSTファイルの内容を読み直し、統合や不要になったデータの整理をする処理だよ。書き込みだけでなく、読み取りや保存容量にも関わるんだ。方式によって、そのバランスは変わるよ。
SSDなら、いつでも速くなる?
まとめ:ざっくりこれだけ覚えればOK!
「RocksDB」って出てきたら「アプリに組み込んで使う、キーと値の保存エンジン」と思えればだいたいOK!
📖 おまけ:英語の意味
「RocksDB」 = キーバリューストアの製品名
💬 RocksDBは製品名で、DBはDatabase(データベース)の略だよ。GoogleのLevelDBを基に、Facebookで開発が始まった保存エンジンなんだ。