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: 더 빠른 계산을 위해 컴파일 타임에 최적화되고 인라인화된 거리 함수.
  • 양자화: Product Quantization (PQ) 및 RaBitQ를 지원하여 벡터를 압축하고 메모리 사용량을 줄이며, 양자화된 코드만 유지하는 "컴팩트" 저장 모드를 가능하게 합니다.
  • Vector Buffer Cache: 벡터 액세스를 가속화하고 디스크 I/O를 줄이기 위한 공유 메모리 캐시.
  • 데이터베이스 통합: 확장 기능(PostgreSQL/DuckDB) 또는 가상 테이블(SQLite)로 통합되어 사용자가 L2, cosine, inner product와 같은 거리 연산자를 사용하여 표준 SQL 쿼리로 벡터 검색을 수행할 수 있도록 합니다.

대상 사용자

  • PostgreSQL, DuckDB 또는 SQLite에 벡터 검색을 추가하려는 데이터베이스 관리자 및 개발자.
  • 관계형 데이터베이스에 통합된 고성능 벡터 저장소가 필요한 RAG (Retrieval-Augmented Generation) 시스템 구축 AI 엔지니어.
  • SQLite를 통해 효율적인 벡터 검색이 필요한 에지 또는 모바일 플랫폼(iOS, Android, WASM) 대상 개발자.

주요 특징

  • 멀티 백엔드 지원: PostgreSQL, DuckDB, SQLite를 지원하는 단일 코어 엔진.
  • 고급 양자화: 상당한 메모리 절감을 위한 RaBitQ 및 PQ 포함.
  • 높은 처리량: 벤치마크 결과 pgvector 및 duckdb-vss보다 높은 QPS를 보여줌.
  • 폭넓은 플랫폼 호환성: Linux, macOS, iOS, Android 및 WASM용 사전 빌드된 패키지 제공.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트