💡 Think of it like this:
A regular database is like a filing cabinet — everything is organised by exact labels (name, date, ID number). You search by typing a precise keyword and either get an exact match or nothing.
A vector database is like a librarian who understands meaning. You say "find me something about climate change impacts on farming" and they find relevant documents even if none of them use those exact words — because the librarian understands that "agricultural drought effects" and "crop yield decline from global warming" are conceptually similar to your request.
That's the core difference. Regular databases match keywords. Vector databases match meaning.
NVIDIA Glossary: What is a Vector Database?
A vector database is a specialised database that stores data as vectors — lists of numbers (called embeddings) that represent the meaning of data like text, images, or audio. Instead of storing information in traditional rows and columns, it maps data into a high-dimensional vector space where similar items are positioned close together.
This is the same concept you learned about in your NLP and Generative AI notes — word embeddings, latent space, and the idea that a neural network converts real-world data into numerical representations. A vector database is simply the infrastructure that stores and searches those representations at scale.
<aside> 💡
Connection to your notes: Remember in NLP how words like "king" and "queen" get mapped to similar positions in vector space because they have related meanings? A vector database does exactly this, but for entire documents, paragraphs, images, or any data chunk — and it lets you search across millions of them in milliseconds.
</aside>
An embedding model takes your raw data (a paragraph, an image, an audio clip) and converts it into a vector — a list of numbers that captures its meaning in multiple dimensions. For example, a paragraph about "solar panel efficiency" might become a vector like [0.23, -0.87, 0.45, 0.12, ...] with hundreds or thousands of values.
Items with similar meanings produce similar vectors — they end up close together in the vector space.
Once vectors are created, they get indexed — organised in a way that makes searching fast. Without indexing, finding the most similar vector would require comparing your query against every single stored vector (which would be impossibly slow at scale).
Indexing structures (like K-D trees or graph-based indexes) let the database quickly narrow down candidates without exhaustive comparison.
When a query comes in, it gets converted to a vector using the same embedding model. The database then finds the nearest vectors — the stored items whose meaning is most similar to the query.
This is called similarity search (or semantic search), and it uses distance metrics to determine how "close" vectors are: