What is a vector database?

Quick answer

A vector database is a database built specifically to store embeddings, the numerical vectors covered throughout this collection’s discussion of embeddings, and to search them efficiently by similarity rather than by exact match, letting an application find the most semantically relevant content for a given query instead of only content that shares identical keywords. It’s the storage and retrieval layer that makes practical use of embeddings possible at scale, without it, a team would have no reliable place to keep millions of vectors organized and searchable, and every other embedding-based capability covered in this collection, semantic search, retrieval-augmented generation, semantic caching, agent memory, depends on some version of this underlying storage and search capability actually working well.

Summary slides
A vector database
Why an ordinary database isn't built for this kind of search
Why vector databases became essential alongside the rise of…
How to think about choosing a vector database for a specific need
Common mistakes people make around vector databases

Why an ordinary database isn’t built for this kind of search

A traditional, relational database excels at exact-match lookups and structured filtering, finding a record with a specific ID, finding all records where a field equals a particular value, but it has no native concept of semantic similarity, no way to ask “find me the records most like this one in meaning” the way a vector database can. Attempting to bolt similarity search onto a traditional database not designed for it tends to perform poorly at any meaningful scale, since the underlying data structures and query engines those systems were built around were never designed with the specific mathematical operations similarity search actually depends on.

This is exactly why vector databases emerged as their own distinct category of database technology, rather than similarity search simply becoming a bolted-on feature of existing database systems, the underlying problem, searching efficiently by similarity across a very large collection of high-dimensional vectors, needed storage engines and indexing structures purpose-built around it, covered in more depth in this collection’s dedicated discussion of vector indexing, rather than adapted awkwardly from technology designed for an entirely different kind of query.

What a vector database does, at a basic level

At its core, a vector database accepts vectors for storage, typically alongside some associated content and metadata, a document’s text, a product’s name, a user’s identifier, and it accepts a query vector and returns the stored vectors most similar to it, ranked by how close they are within the embedding space, using the similarity measures covered in this collection’s discussion of embedding similarity. This basic operation, store vectors, search by similarity, sounds simple stated plainly, but doing it well at meaningful scale, covered throughout this collection’s discussion of vector database scaling and architecture, involves genuinely sophisticated engineering underneath that simple surface description.

Beyond this core operation, a production-grade vector database typically also supports filtering search results by metadata, covered in this collection’s discussion of vector database filtering, updating and deleting stored vectors as underlying content changes, and operating reliably at whatever scale an application needs, features that distinguish a genuine, production-ready vector database from a minimal library that only implements the raw similarity search algorithm on its own, a distinction covered in this collection’s dedicated comparison between vector search and vector databases.

Why vector databases became essential alongside the rise of embedding-based AI applications

Vector databases existed in some form before the current wave of interest in large language models, used in earlier recommendation systems and image similarity applications, but their prominence increased dramatically alongside the growth of retrieval-augmented generation and other embedding-dependent AI application patterns, since these applications specifically need to search large content collections by meaning rather than exact keyword match. A language model’s usefulness in many real applications depends directly on being able to ground its responses in relevant external content, and finding that relevant content reliably at scale is exactly the problem a vector database exists to solve.

This connection is why vector databases are now discussed so frequently alongside language models specifically, even though the two are genuinely separate technologies solving different problems, a vector database doesn’t generate text and a language model doesn’t natively search a large collection by similarity, but combining them, letting a vector database handle retrieval and a language model handle generation, is precisely the pattern that makes many of the most practically useful AI applications actually work well in production.

How to think about choosing a vector database for a specific need

The considerations covered throughout this collection’s other vector database articles, indexing approach, filtering capability, scaling behavior, architecture, all matter for choosing the right vector database for a given application, but the starting point for that evaluation is understanding what kind of workload the application generates, how many vectors need to be stored, how frequently that content changes, what filtering needs exist alongside pure similarity search, and how demanding the application’s latency requirements actually are. A small application with a modest, relatively static content collection has very different requirements than a large, rapidly changing production system serving many simultaneous users, and the right vector database choice reflects that difference rather than defaulting to whichever option is most popular or most frequently discussed.

This is why evaluating vector databases benefits from the same deliberate, requirements-driven approach covered throughout this collection’s broader discussion of infrastructure choices, understanding an application’s actual needs first, then evaluating specific vector database options against those needs directly, rather than choosing based on general reputation and hoping the choice happens to fit.

Why a vector database is infrastructure, not a standalone product feature

It’s worth being clear that a vector database, on its own, doesn’t produce a finished AI application, it’s infrastructure that other components, embedding models, generation models, application logic, need to be built around and connected to. A team adopting a vector database still needs to handle the embedding pipeline covered elsewhere in this collection, converting raw content into vectors in the first place, and still needs to build the application logic that uses retrieved results meaningfully, whether that’s grounding a generated response or presenting search results directly to a user.

Recognizing this helps set realistic expectations, adopting a vector database is a necessary and often foundational piece of building an application that needs semantic search or retrieval, but it’s one piece among several, and the overall quality of the finished application depends just as much on the embedding model quality, the chunking strategy, and how thoughtfully the retrieved results actually get used, as it does on the vector database itself performing its core search function well.

Common mistakes people make around vector databases

1. Assuming a vector database alone solves an AI application’s retrieval needs, without accounting for the embedding pipeline and application logic that still need to be built around it.

2. Attempting to bolt similarity search onto a traditional database not designed for it, rather than adopting purpose-built vector database technology for that specific problem.

3. Choosing a vector database based on general popularity rather than evaluating it against an application’s actual scale, filtering needs, and latency requirements.

4. Underestimating the engineering sophistication genuinely required to make similarity search perform well at meaningful scale, treating it as a simple, solved problem.

5. Conflating a minimal vector search library with a full, production-ready vector database, missing the considerable additional infrastructure the latter provides.

What connects these mistakes is underestimating both what a vector database actually provides and what it doesn’t, it’s a genuinely essential, purpose-built piece of infrastructure for searching content by meaning at scale, but it’s one component within a larger system, and understanding both its real value and its real boundaries is what lets a team adopt and use it effectively rather than either underinvesting in the surrounding infrastructure it depends on or expecting it to solve problems that actually belong to other parts of the system.

The deeper point about vector databases is that they represent the practical, operational answer to a problem that pure embedding theory alone doesn’t solve, once meaning exists as vectors, something still has to store, organize, and search those vectors reliably at real scale, and vector databases are the specific technology that emerged to fill exactly that gap, becoming foundational infrastructure for nearly every AI application that needs to find relevant information rather than simply generate plausible-sounding text.