Alopex DB · 本体の機能
機能の詳細
Alopex DBの仕組みを、ストレージ、トランザクション、SQL、ベクトル検索、サーバー、クラスタの順に説明します。
更新: 2026/10/11
アーキテクチャは機能の概要にあります。
ストレージ
すべてのデータが、同じ基盤のストレージに入ります。書き込みはログへの追記で受け、既定ではまとめてディスクに同期するので、大量の書き込みもすばやく終わります。クラッシュしても復旧します。カラムナーテーブルは、テーブルごとにZstdで圧縮するか、圧縮しないかを選べます。
データベースは、1つの .alopex ファイルです。コピーするだけでバックアップと受け渡しが終わり、コピー先でもそのまま読めます。
トランザクション
ACIDトランザクションで、読み取りは書き込みを止めません。
SQLでは、BEGIN、COMMIT、ROLLBACK、SAVEPOINT で制御します。分離レベルは REPEATABLE READ です。READ ONLY のトランザクションも使えます。
SQL
JOIN、GROUP BY、再帰CTE、ウィンドウ関数- 主キー、外部キー、
NOT NULLなどの制約 - ビュー
- 全文検索
EXPLAINによる実行計画の確認- CSVへの書き出し
SQLの例はクイックスタートにあります。
ベクトル検索
ベクトル型の列に、埋め込みベクトルを保存します。距離は、コサイン、L2、内積から選びます。
索引がなければ、全件を調べる完全探索で、正確な結果を返します。HNSW索引を作ると、近似探索で高速に検索します。どちらも、SQLの条件と組み合わせて、条件に合う行の中から近いものを探せます。
組み込み、CLI、サーバー
- 組み込み:RustとPythonから、ライブラリとして使います。メモリ上でもディスク上でも動かせ。
- CLI:コマンドラインから、SQL、KV、ベクトルを操作します。
- サーバー:HTTPとgRPCで接続します。TLS、監査ログ、メトリクスを備えます。
クラスタの土台
クラスタの状態管理とルーティングの診断を備えます。単一ノードと同じ動きで、通常のSQLの実行に影響しません。ノード間の通信には、関連製品のChirpsを使います。