VexDB-THU/VexDB-Lite

A cross-platform vector database, which can be integrated into existing databases as a plugin.

解決的問題

VexDB-Lite 為包括 PostgreSQL、DuckDB 和 SQLite 在內的流行資料庫引擎提供高性能向量相似性搜尋功能。它解決了在現有資料庫生態系統中對高效近似最近鄰 (ANN) 搜尋與向量儲存的需求,提供了比標準向量擴充功能具有更好效能與壓縮選項的替代方案。

工作原理

本專案實現了一種在所有三個資料庫後端共享的自定義基於圖的索引演算法。為了優化效能與記憶體使用,它採用了:

  • SIMD Distance Dispatch:編譯時優化的內聯距離函數,用於更快的計算。
  • 量化:支援乘積量化 (PQ) 與 RaBitQ 來壓縮向量,減少記憶體占用,並允許僅保留量化碼的「緊湊」儲存模式。
  • 向量緩衝區快取:用於加速向量存取並減少磁碟 I/O 的共享記憶體快取。
  • 資料庫整合:作為擴充功能 (PostgreSQL/DuckDB) 或虛擬資料表 (SQLite) 整合,允許使用者使用帶有 L2、cosine 與內積等距離運算子的標準 SQL 查詢來執行向量搜尋。

適用對象

  • 希望在 PostgreSQL、DuckDB 或 SQLite 中加入向量搜尋的資料庫管理員與開發人員。
  • 需要將高性能向量儲存整合到其關聯式資料庫中以構建 RAG (檢索增強生成) 系統的 AI 工程師。
  • 需要透過 SQLite 進行高效向量搜尋的邊緣或行動平台 (iOS, Android, WASM) 目標開發人員。

亮點

  • 多後端支援:支援 PostgreSQL、DuckDB 與 SQLite 的單一核心引擎。
  • 進階量化:包含用於大幅減少記憶體占用的 RaBitQ 與 PQ。
  • 高吞吐量:基準測試顯示其 QPS 高於 pgvector 與 duckdb-vss。
  • 廣泛的平台相容性:提供適用於 Linux、macOS、iOS、Android 與 WASM 的預建套件。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案