このプロジェクトについて
FrogDBは、Redis 8.0との完全な互換性を目指す、Rustで書かれたメモリファーストのデータベースです。非同期エンジンとしてTokioをベースに構築されており、RESP2とRESP3の両ワイヤプロトコルを実装しているため、クラスタ対応クライアントを含む既存のあらゆるRedisクライアントを変更なしで接続できます。
ステータス: FrogDBはプレリリースソフトウェアであり、破壊的変更が予想されます。READMEでは、一貫性モデルが再構築・強化中であり、クラスタとレプリケーションのコードが書き直されているため、これらの領域における動作やAPIは変更される可能性があると記載されています。
データ型とコマンド
- コア構造: Strings、Lists、Sets、Sorted Sets、Hashes、Streams
- ビットマップとビットフィールド: BITCOUNT、BITOP、BITPOS、BITFIELD
- JSON: JSONPathを備えたRedisJSON互換のドキュメントストレージ
- 時系列: 集約とダウンサンプリングに対応したGorilla圧縮の時系列
- ベクトルセット: 近似最近傍探索
- 確率的構造: Bloomフィルタ、Cuckooフィルタ、HyperLogLog、Count-Min Sketch、Top-K、T-Digest
- 地理空間: Geohashインデックスと距離クエリ
- チャネルおよびパターン購読に対応したPub/Sub、さらにイベントソーシング
- LuaスクリプトとMULTI/EXECトランザクション
- 検索: 全文検索、セカンダリインデックス、ベクトル検索、集約、JSONドキュメント
- クロススロット操作(MULTI/EXEC、MGETなど)はシングルノード運用で許可されます
クラスタリングとレプリケーション
- リサイズとリードレプリカに対応したクラスタ運用
- クラスタ状態の調整のためのRaftベースの合意形成
- クラスタの自動リバランスはTODOとして記載
永続化
- RocksDBをバックエンドとするライトアヘッドログで、ストレージとレプリケーションの両方に使用
- 設定可能な耐久性モード(ライトスルーまたは非同期)
- プロジェクトの説明ではホット/
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.