Lesson 2 / 28
The Landscape: Libraries, Extensions, Dedicated Engines, Managed Services
Place the main options in four families.
Four families
(1) Libraries (FAISS, hnswlib, ScaNN): in-process indexes; fastest to start, you build everything else. (2) Extensions or features of general databases: pgvector for PostgreSQL, vector search in Elasticsearch/OpenSearch, MongoDB Atlas, Redis, and others: vectors live beside your existing data, with SQL or the engine's query language, existing backups, security and operations. (3) Dedicated open-source engines such as Qdrant, Milvus, Weaviate, Chroma and LanceDB: purpose-built for vector workloads with rich filtering, hybrid search and scaling features, which you run yourself or use as a hosted service. (4) Managed proprietary services such as Pinecone: you rent an API and the provider operates it. Features, limits and prices change fast, so verify current documentation for any product before deciding.
The four families
A map, not a ranking; examples are not exhaustive.
Family Examples You get / you give up
library FAISS, hnswlib, ScaNN speed, control / persistence, filters, HA are yours
extension of a general DB pgvector, Elasticsearch/OpenSearch, Mongo, Redis one system, SQL, backups / may trail specialised engines at huge scale
dedicated open-source engine Qdrant, Milvus, Weaviate, Chroma, LanceDB rich vector features / one more system to run
managed service Pinecone, hosted versions of the above no operations / cost, lock-in, data leaves your networkStart with what you already run
A new database is a new on-call burden. Prove that your current stack cannot meet the measured need before adding another system.
Quick check: Which family lets you keep vectors beside existing relational data with SQL?
- An extension such as pgvector
- A bare ANN library
- A CDN
- A message queue
Answer
An extension such as pgvector — pgvector adds vector types and indexes to PostgreSQL.