AI Course
Lesson 104: Vector Databases
Once text, images, or documents are converted into embeddings, the next challenge is storing and searching millions or even billions of those vectors efficiently. Traditional databases are not designed for this purpose. Vector databases are built specifically to store embeddings and perform fast similarity search.
In this lesson, you will learn what vector databases are, why they are needed, how they work internally, and how they are used in modern AI systems.
What Is a Vector Database?
A vector database is a specialized database designed to store high-dimensional vectors and quickly retrieve the most similar vectors based on distance or similarity metrics.
- Stores embeddings instead of plain text
- Supports similarity-based search
- Optimized for high-dimensional data
Instead of asking “Does this text match exactly?”, vector databases ask “Which items are most similar in meaning?”.
Real-World Analogy
Imagine a music streaming app. You do not search only by song name. You expect recommendations that sound similar to what you like. Behind the scenes, songs are converted into vectors, and similar songs are found using vector search.
Vector databases perform the same task, but for text, images, code, or any embedded data.
Why Traditional Databases Are Not Enough
SQL and NoSQL databases work well for exact matches and filters, but they struggle with similarity search.
- Exact match queries do not capture meaning
- High-dimensional distance calculations are slow
- Scalability becomes a problem
Vector databases solve these problems using specialized indexing and search algorithms.
How Vector Databases Work
At a high level, vector databases follow this process:
- Convert data into embeddings
- Store vectors along with metadata
- Build efficient similarity indexes
- Search using distance metrics
Storing Embeddings
Each entry in a vector database contains a vector and optional metadata such as document ID, source, or tags.
vector = embedding_model.encode("AI is transforming technology")
db.insert(
id="doc_1",
vector=vector,
metadata={"topic": "AI"}
)
The vector represents meaning, while metadata helps with filtering and context.
Similarity Search
When a query is made, the input is converted into an embedding and compared against stored vectors.
query_vector = embedding_model.encode("How AI changes software")
results = db.search(
vector=query_vector,
top_k=3
)
The database returns the vectors that are closest in meaning, not exact text matches.
Distance Metrics
Vector databases use mathematical distance functions to measure similarity.
- Cosine similarity: Measures angle between vectors
- Euclidean distance: Measures straight-line distance
- Dot product: Measures directional similarity
Cosine similarity is the most common for text embeddings.
Indexing for Speed
Searching every vector would be too slow. Vector databases use approximate nearest neighbor (ANN) indexing.
- Reduces search time drastically
- Trades tiny accuracy loss for huge speed gain
- Enables real-time AI applications
This is why vector search scales to millions of embeddings.
Common Use Cases
Vector databases are widely used in AI systems:
- Semantic search engines
- Retrieval-augmented generation (RAG)
- Recommendation systems
- Document and code search
Modern chatbots rely heavily on vector databases to retrieve relevant context.
Limitations and Considerations
Vector databases are powerful but not perfect.
- Approximate search may miss exact results
- Index tuning is important for performance
- Embedding quality directly affects results
Good embeddings and proper indexing are key to success.
Practice Questions
Practice 1: What type of data do vector databases primarily store?
Practice 2: What kind of search do vector databases specialize in?
Practice 3: Name a common distance metric used in vector search.
Quick Quiz
Quiz 1: What do vector databases compare?
Quiz 2: Why is approximate nearest neighbor search used?
Quiz 3: Which AI system commonly uses vector databases?
Coming up next: LLM Agents and Autonomous Systems — how AI systems plan, reason, and take actions using tools.