Vector database
Milvus Distributed Vector Database and Hybrid Search Platform
Milvus is an Apache 2.0 vector database with Lite, Standalone, and Distributed deployment modes for dense, sparse, binary, and multi-vector search, structured filtering, BM25 full-text retrieval, hybrid ranking, and large-scale AI data workloads.
Advanced · Milvus Lite, Standalone Docker, Distributed Kubernetes, or Zilliz Cloud
Editorial review
Tool categories, pricing, source status, deployment options, and product claims can change quickly. Verify the official source before production or commercial use.
OpenSourcesAI verdict
Milvus is a compelling vector-data platform when retrieval scale, deployment flexibility, hybrid search, multiple index families, and independent compute scaling justify a dedicated distributed system. Milvus Lite and Standalone lower the entry barrier, but Distributed introduces coordinators, workers, object storage, WAL, metadata services, and Kubernetes operations. Choose it for a real scale or architecture requirement—not because every RAG prototype needs an enterprise vector cluster.
Best for
Teams building large or rapidly growing semantic search, recommendation, multimodal retrieval, or RAG systems that need dedicated vector infrastructure, hybrid dense-and-sparse retrieval, multiple deployment tiers, and a path to distributed scaling.
Why use it
Use Milvus when vector data is a primary platform workload and the team needs more than a library index or PostgreSQL extension. Its collection model, vector and scalar types, index choices, consistency levels, hybrid search, replicas, storage-compute separation, and managed Zilliz path cover workloads from local files to very large clusters.
Lite, Standalone, and Distributed are different products operationally
Milvus Lite runs through the Python client against a local database file and is suited to prototypes, notebooks, tests, and smaller embedded workloads. Standalone packages the server components for one machine. Distributed separates services so ingestion, query, and storage-related work can scale independently.
Client APIs may be similar across modes, but operational behavior is not. Current documentation notes that Standalone cannot simply be upgraded online into a cluster. Plan data migration and deployment evolution before the local prototype becomes a production dependency.
Collections, schemas, and vector types
Milvus organizes entities in collections with primary keys, scalar fields, vector fields, optional dynamic JSON, partitions, indexes, and consistency choices. Multiple vector fields support multimodal or hybrid designs, while sparse vectors and BM25 enable lexical retrieval alongside dense embeddings.
Schema flexibility does not eliminate versioning. Changing embedding dimensions, tokenization, analyzers, or relevance strategy can require new fields or collections, backfills, validation, and cutover procedures.
Indexes, recall, and resource tradeoffs
Milvus supports several ANN structures and quantization combinations. Indexes speed search but add build time, storage, memory, parameter tuning, and potential recall loss. The best index depends on data size, dimensionality, filtering, hardware, latency, update rate, and accuracy targets.
Benchmark representative queries and filters against labeled relevance data. Index names and vendor benchmarks are not substitutes for measuring recall, p95 latency, build time, memory, and compaction behavior on the actual collection.
Consistency and freshness
Milvus supports strong, bounded-staleness, session, and eventual consistency. Bounded staleness is the documented default. Stronger consistency can increase latency, while weaker settings may return a view that has not observed the newest writes.
Select consistency from product requirements. A conversational RAG index, financial workflow, recommendation feed, and offline catalog may tolerate very different freshness guarantees. Test read-after-write and failover behavior explicitly.
Distributed architecture and operations
Distributed Milvus separates stateless access proxies, coordination, streaming ingestion, query execution, data management, object storage, metadata, and write-ahead logging. This enables horizontal scaling and failure isolation while creating a larger operational surface.
Kubernetes, object-store durability, WAL health, etcd or metadata state, compaction, index builds, capacity, upgrades, and backup procedures all require monitoring. Managed Zilliz Cloud transfers much of that burden but changes cost, control, and data-governance considerations.
Snapshots, backups, and security
Milvus 3 snapshots are lightweight point-in-time manifests suited to rollback, testing, and versioning. They reference existing storage rather than replacing independent long-term backups. Disaster recovery still needs copies protected from the same storage failure.
Milvus supports authentication, TLS, and RBAC with privileges at instance, database, and collection scopes. Applications must also enforce tenant and document-level filters consistently; database authentication alone does not implement business authorization.
Key features
- Milvus Lite embedded Python mode, single-machine Standalone, and Kubernetes-oriented Distributed deployment.
- Dense, sparse, binary, float16, bfloat16, int8, and other vector representations alongside scalar, array, and JSON fields.
- ANN, filtered, range, hybrid, full-text BM25, reranking, fetch, and scalar query operations.
- Multiple vector and scalar index families with quantization and refinement tradeoffs.
- Four consistency levels: strong, bounded staleness, session, and eventual.
- Distributed architecture with proxies, coordinator, streaming, query, and data workers plus object, metadata, and WAL storage.
Common AI use cases
- Large-scale document and knowledge retrieval for RAG.
- Hybrid semantic and BM25 search with reranking.
- Image, video, audio, and multimodal similarity search.
- Recommendation, matching, deduplication, and discovery.
- High-volume embedding storage with structured filters.
- Shared vector infrastructure for multiple applications or tenants.
Business use cases
- Enterprise knowledge search across large document estates.
- Marketplace and media recommendation systems.
- Fraud, similarity, and duplicate detection.
- Multimodal catalog and asset discovery.
- Central retrieval infrastructure for several AI products.
How AI builders can use it
- Start with Milvus Lite or a disposable Standalone instance and a labeled query set.
- Define collection schemas, primary keys, vector fields, filters, consistency, and retention.
- Compare dense, sparse, BM25, hybrid, and reranked retrieval.
- Benchmark index families and resource settings on realistic data.
- Prove backup, snapshot, migration, and restore procedures.
- Adopt Distributed or managed deployment only when scale, availability, or tenancy requires it.
Who should use it
- Teams with large or fast-growing vector datasets.
- Organizations needing a dedicated distributed retrieval platform.
- Applications combining dense, sparse, full-text, and structured search.
- Platform teams capable of operating stateful distributed infrastructure.
Who should not use it
- Small applications already well served by pgvector or a local vector library.
- Teams without labeled retrieval evaluations.
- Operators who do not want Kubernetes, object storage, WAL, and metadata dependencies.
- Projects expecting the vector database to parse documents or generate answers automatically.
Evaluation checklist
- Which deployment mode matches current and forecast scale?
- What vector types, dimensions, scalar fields, and analyzers are required?
- Which index, quantization, and search parameters meet recall and latency targets?
- What consistency and write-freshness behavior does the product require?
- How will partitions, replicas, resource groups, and tenants be organized?
- What are the object storage, WAL, metadata, compaction, and network requirements?
- How will snapshots, independent backups, restores, and migrations be tested?
- Which authentication, TLS, RBAC, and application filters enforce access?
Security and admin notes
- Enable authentication, TLS, and least-privilege RBAC before exposing Milvus beyond a trusted development network.
- Enforce tenant and document permissions in query filters and test negative-access cases.
- Protect object storage, WAL, metadata stores, backups, and snapshots with separate credentials and policies.
- Treat embeddings and metadata as potentially sensitive derived data.
- Pin Milvus, SDK, Helm, operator, and dependency versions and review upgrade notes.
- Keep independent disaster-recovery backups rather than relying only on snapshots that reference live storage.
Pricing notes
Milvus is Apache 2.0 open-source software. Self-hosting costs include compute, memory, SSD or object storage, WAL and metadata services, Kubernetes, backups, monitoring, and operator time. Zilliz Cloud and support offerings have separate current pricing.
Tradeoffs
Milvus offers unusual deployment breadth and large-scale vector capabilities, but the distributed architecture is significantly more complex than a single-purpose extension or one-node database. Index tuning, consistency, compaction, storage, and recovery require expertise. Its complexity is justified when scale, availability, hybrid retrieval, or platform reuse is a real requirement.
Recommended workflow
- Prototype with Lite and labeled queries.
- Validate schema and hybrid retrieval.
- Benchmark indexes and consistency.
- Load-test Standalone if one machine may suffice.
- Prove backups and migration.
- Scale to Distributed or managed service only from measured requirements.
Pros
- Deployment path from embedded Lite to large distributed clusters.
- Broad vector, scalar, hybrid, and full-text feature set.
- Many index and hardware optimization choices.
- Independent scaling of distributed components.
- Strong open-source and managed-cloud ecosystem.
Cons
- Distributed mode has a large operational footprint.
- Index and consistency choices require careful benchmarking.
- Migration between deployment modes needs planning.
- Another stateful platform for teams already using PostgreSQL or search infrastructure.
- Retrieval quality remains dependent on application design and evaluation.
Alternatives
- Qdrant may be better for a focused vector database with simpler operations and strong payload filtering.
- pgvector may be better when vectors belong beside relational data in PostgreSQL.
- Weaviate may be better when integrated object schemas and managed vectorization are preferred.
- OpenSearch or Elasticsearch may be better when lexical search operations already dominate.
FAQ
What is the difference between Milvus Lite and Standalone?
Lite is embedded through the Python client and stores data in a local file. Standalone is a one-machine Milvus server with broader client and production use.
Can Standalone be upgraded directly into Distributed?
Current documentation says an online upgrade from Standalone to a cluster is not supported, so plan an explicit migration.
Does Milvus support keyword search?
Yes. It supports sparse vectors and BM25 full-text search that can be combined with dense vectors in hybrid retrieval.
Which consistency level should I use?
Use the weakest level that still satisfies product freshness and correctness requirements, then verify read-after-write behavior under load and failure.
Are snapshots the same as backups?
No. Snapshots are lightweight point-in-time manifests for rollback and testing; independent backups protect against long-term or total storage failure.
Official verification sources
Direct official links used to verify pricing, features, security claims, and product packaging.
OpenSourcesAI ecosystem connections
Use these next-step links to move from this profile into related tools, comparisons, guides, stacks, and curated shortlists.
Alternative solutions
Guides, comparisons, and resources
Directory paths