Start studying
Module 8 · Embeddings & Search Module contents
Module 8  ·  Card 12 / 17beginner

Vector Databases

A vector database stores embeddings alongside metadata and serves similarity queries.

Pinecone, Weaviate, Qdrant, Milvus and pgvector are common choices.

They add filtering, so you can restrict search by date, owner or type.

They handle persistence, updates, scaling and backups.

Choose one when you need a running service rather than an in-process index.

Learn in depth ↓
Module 08 · Embeddings & Search · 17 concepts
In depth  /  15 lines

Vector Databases, in more detail

A vector database stores embeddings and serves similarity queries as a running service.

It is what you graduate to when a library inside your process stops being enough.

Pinecone, Weaviate, Qdrant, Milvus, Chroma and pgvector are the usual candidates.

The core operation is the same nearest-neighbour search a library would do.

What you are buying is everything around it.

Persistence, so the index survives a restart.

Updates, so a document can be added or deleted without rebuilding everything.

Metadata filtering, so search can be limited by date, owner, language or type.

That filtering is more valuable than it sounds and awkward to bolt on yourself.

Combining a filter with an approximate index is genuinely difficult to do well.

They also handle scaling, replication, backups and access control.

pgvector deserves a look first if you already run Postgres, since one database is simpler than two.

It is entirely adequate up to a few million vectors.

A dedicated service earns its place at larger scale or with heavy query volume.

The embedding model matters far more to quality than which database you pick.

Want the full technical article? Wikipedia ↗
Test yourself

One question on this card. Every option explains itself once you pick, right or wrong.

Question 1
What does a vector database add over an in-process index?
Embeddings & Search

17 concepts in this module, then a graded test with every answer explained.

Study this module →
↑↓ move↵ openesc close