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 的预构建包。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目