A vector search engine that refuses to pick a database
Vector search shouldn't force you to choose between PostgreSQL and DuckDB.

What it does VexDB-Lite is a C++ vector similarity search engine shipped as extensions for PostgreSQL and DuckDB. Both backends share the same graph index algorithm, SIMD distance dispatch, and quantization kernels, so behavior and performance stay consistent across an OLTP workload in Postgres or an analytical job in DuckDB. It exposes custom vector types, distance operators, and optimizer rewrites that turn approximate-nearest-neighbor queries into index scans instead of brute-force table scans.
The interesting bit Instead of wrapping a standalone vector database in SQL glue, VexDB-Lite embeds directly into the host database’s storage and query planner. The open-source edition also serves as a teaser for the commercial VexDB, which adds async ingestion, graph sharding, and advanced caching—but the Lite version already outperforms pgvector and DuckDB VSS on the SIFT-1M benchmark at comparable recall.
Key highlights
- Single C++ core shared across PostgreSQL and DuckDB extensions, including graph index, SIMD dispatch, and product quantization.
- Optimizer integration rewrites ANN queries into index scans (
ANN Index Scanin PG,VEXDB_INDEX_SCANin DuckDB) instead of sequential scans. - Supports L2, cosine, and inner-product distances with inlined, compile-time-optimized distance functions.
- DuckDB extension offers filtered ANN search with metadata columns; PostgreSQL extension supports parallel index builds and shared-memory vector buffer cache.
- SIFT-1M benchmarks show roughly 1.5–2× the QPS of pgvector and DuckDB VSS at similar recall@10.
Caveats
- The open-source edition lacks several commercial features—high availability, async insert, bulk buffers, and auto-quantization are reserved for the paid VexDB tier.
- ARM builds for DuckDB currently fall back to scalar distance dispatch without SIMD acceleration.
- DuckDB extension requires compiling inside the DuckDB source tree, so packaging and distribution are more involved than a standalone CMake project.
Verdict Worth a look if you want vector search inside PostgreSQL or DuckDB without maintaining a separate retrieval service. Skip it if you need enterprise HA, write-heavy async ingestion, or turnkey ARM SIMD support on DuckDB.
Frequently asked
- What is VexDB-THU/VexDB-Lite?
- Vector search shouldn't force you to choose between PostgreSQL and DuckDB.
- Is VexDB-Lite open source?
- Yes — VexDB-THU/VexDB-Lite is open source, released under the MIT license.
- What language is VexDB-Lite written in?
- VexDB-THU/VexDB-Lite is primarily written in C++.
- How popular is VexDB-Lite?
- VexDB-THU/VexDB-Lite has 1k stars on GitHub.
- Where can I find VexDB-Lite?
- VexDB-THU/VexDB-Lite is on GitHub at https://github.com/VexDB-THU/VexDB-Lite.