Milvus logo

Milvus

Rivendica

Milvus is an open-source vector database for similarity search over embeddings, with local, single-machine, distributed, and cloud deployment options. It supports semantic search, RAG, image search, and hybrid search for GenAI workflows.

Milvus preview

Overview

Milvus is an open-source vector database for building applications around embeddings and similarity search. It is presented as a high-performance system that runs across a wide range of environments, from a laptop to large-scale distributed clusters, and is available as both open-source software and a cloud service.

The product is designed to store vector data alongside metadata, then support fast search and retrieval over that data. The documentation and quickstart show a Python-based workflow using `pymilvus`, with Milvus Lite for local development and Docker or Kubernetes options for production deployments.

Milvus is positioned for GenAI and other embedding-driven workloads such as semantic search, retrieval augmented generation, image search, multimodal search, hybrid search, and related retrieval pipelines. Its architecture emphasizes scalability, hardware-aware performance, and multiple search modes rather than a single narrow use case.

Features

Vector and metadata modeling

Store vector embeddings and associated metadata in collections. The documentation says Milvus supports a range of data types, including numerical and character types, vector types, arrays, sets, and JSON.

Multiple deployment modes

Choose a deployment mode that matches your environment. Milvus Lite is for notebooks and laptops, Standalone is a single-machine Docker deployment, and Distributed is built for Kubernetes and billion-scale workloads.

Search modes for different retrieval needs

Run a broad set of retrieval operations, including ANN search, filtering search, range search, hybrid search, full text search, reranking, fetch, and query.

Performance-oriented search engine

Use hardware-aware optimizations and several indexing/search algorithms, such as IVF, HNSW, and DiskANN, to support fast vector search on different platforms.

Distributed scaling architecture

Scale a stateless, decoupled architecture across distributed systems. The docs describe independently scalable search, data, and index components for large deployments.

Python-first developer workflow

Start locally with `pymilvus` and `MilvusClient`, then move the same client-oriented workflow into production deployments on Docker or Kubernetes.

Use cases

  • Retrieval augmented generation

    Build retrieval-augmented generation systems that store embeddings for documents or knowledge bases and use vector search to surface relevant context for an LLM.

  • Semantic search

    Create search experiences for text, images, or other unstructured data where similarity over embeddings is more useful than exact keyword matching.

  • Prototyping and development

    Run local experiments in Jupyter notebooks or on laptops with Milvus Lite before moving the same model and client approach into Docker or Kubernetes deployments.

  • Metadata-aware retrieval

    Use hybrid search, filtering, and reranking when you need to combine vector similarity with metadata constraints or secondary ranking logic.

  • High-scale production search

    Support large-scale production systems that need distributed infrastructure and elastic scaling for very large vector collections.

Pros and Cons

Pros

  • Supports local, single-machine, and distributed deployment modes.
  • Covers a broad set of retrieval patterns, including ANN, filtering, hybrid, range, full text, reranking, fetch, and query.
  • Stores vectors together with metadata, which helps support filtering and richer retrieval workflows.
  • Provides a Python-first quickstart with `pymilvus` and `MilvusClient`, making local setup straightforward.
  • Documented as open-source under Apache 2.0 and also available as a cloud service.

Cons

  • Pricing and plan details were not available from the provided pricing page because it returned a 404.
  • The source material is strongest on vector retrieval and deployment modes; it provides less detail on integrations and managed-service specifics than on core database capabilities.

FAQ

How do I run Milvus?

Milvus supports local prototyping through Milvus Lite, a Python library that can run from a notebook or laptop, and it also supports Docker and Kubernetes for production use cases. The documentation describes Milvus Lite, Standalone, and Distributed deployment modes.

What does the basic Milvus workflow look like?

The quickstart shows how to install `pymilvus` with pip, create a local database file with `MilvusClient`, create a collection, insert vector data, and run searches. The examples use Milvus Lite for local setup.

What kinds of applications is Milvus meant for?

Milvus is designed for vector similarity search on high-dimensional embeddings and supports workflows such as semantic search, retrieval augmented generation (RAG), image search, multimodal search, hybrid search, and graph RAG.

Is Milvus open source or managed?

The source describes Milvus as open-source software under the Apache 2.0 license and also as a cloud service. The homepage additionally points to Zilliz Cloud as the managed Milvus option.

What search capabilities does Milvus provide?

The documentation notes that Milvus supports multiple search types, including ANN search, filtering search, range search, hybrid search, full text search, reranking, fetch, and query.

Quick Facts

Category
Vector Database
Source domain
milvus.io
License
Apache 2.0
Primary language
Python quickstart via `pymilvus`
Deployment options
Lite, Standalone, Distributed, and cloud service
Common workflows
Semantic search, RAG, image search, multimodal search, hybrid search