milvus
A distributed vector database built to hold billions of embeddings, with the operational weight that implies.
What it is
Milvus is an open source vector database — a store built to hold embedding vectors and answer nearest-neighbour questions about them quickly. Those are the queries behind semantic search, recommendation and retrieval-augmented generation, where you ask for the items closest to a given vector rather than for rows matching a value.
It sits at the heavy end of the category. Even a standalone deployment runs several components: the database itself plus etcd for metadata and an object store such as MinIO for data. That is why the recommended install is a Docker Compose file rather than a single binary. The complexity buys horizontal scaling — a collection can be sharded across nodes and grow past what one machine can hold.
Choose it when you already expect the dataset to be large, or when you need the more advanced index types and consistency controls. For a prototype holding a few thousand vectors it is far more machinery than the job requires.
Why we recommend it
It is built for scale, not just for demos
Collections can be sharded and replicated across nodes, so the deployment that starts small can keep growing. Rebuilding an application onto a different database later costs far more than starting on one that scales.
The index choice is yours and it is broad
It offers HNSW and several IVF variants plus GPU indexes. Being able to pick the index changes the latency and recall you actually get at scale, and that option is not available everywhere.
Hybrid search in a single system
Vector similarity can be combined with scalar filters and, in newer versions, full-text search, so you are not maintaining a separate keyword engine next to it.
A company funds its development
Zilliz develops Milvus commercially and sells a managed version, which is a reasonable signal that the open source project will keep receiving attention rather than stalling.
How it scores
These are our editorial ratings, not benchmark results. We score on how the project behaves in practice — how long it takes to get running, how good the documentation is, how responsive the maintainers are, and how well it holds up over time. The licence and star count above are read from GitHub and are a snapshot.
Pros and cons
Strengths
- Designed for billions of vectors with horizontal sharding and replication
- Wide choice of index types, including GPU-accelerated ones
- Official clients for Python, Java, Go, Node.js, C# and Rust
- Hybrid search combining vector similarity with scalar filters
- Strong documentation and a large project backed by Zilliz
Trade-offs
- Heavy to run: even a standalone install is a multi-container stack, and production calls for Kubernetes or equivalent
- Memory-hungry compared with single-binary alternatives, even at modest dataset sizes
- The moving parts add operational work — you are responsible for etcd and object storage as well
- Overkill for prototypes and small local applications
How to get it
Direct download
Clicking a button downloads the file straight from the project's release — you stay on this page.
Source and documentation
At a glance
| Category | Vector DB |
|---|---|
| Licence | Apache 2.0 |
| Written in | Go |
| GitHub stars | 46,043 |
| Repository | milvus-io/milvus |
Licence and star count were read from the GitHub API when this page was generated and are a snapshot. Check the repository for the current figure and the authoritative licence text.
Other Vector DB tools
We are not affiliated with milvus or its maintainers. We list it because it is genuinely useful and genuinely free. If you plan to build a commercial product on top of it, read the licence on the repository first.