Jump to content

Draft:Milvus (vector database)

From Wikipedia, the free encyclopedia
Milvus
Developer(s)Zilliz
Initial releaseOctober 19, 2019; 4 years ago (2019-10-19)
Stable release
v2.4.11 / September 11, 2024; 13 days ago (2024-09-11).[1]
Repositorygithub.com/milvus-io/milvus
Written inC++, Go
Operating systemLinux, macOS
Platformx86, ARM
TypeVector database
LicenseApache License 2.0
Websitemilvus.io

Milvus is an open-source distributed vector database developed by Zilliz. It is licensed under the Apache License 2.0.

History

[edit]

Milvus has been developed by Zilliz since 2017. Milvus has joined Linux foundation as an incubation project in January 2020 [2], and became a graduate in June 2021 [2].

Milestones

[edit]
  • Version 1.0.0 was released on 9 March 2021[3]. The details about its architecture and possible applications were presented on ACM SIGMOD Conference in 2021[4].
  • Version 2.0.0 (January 2022)[5] was a major redesign of the whole product, including a new architecture [6][7], storage data format. It also added support for scalar data and integration with Prometheus and Grafana for monitoring and alerts.
  • Version 2.4.0 (April 2024) added[11] support for sparse vectors, multi-vector and hybrid search [12], FP16 and BF16 data types, grouping search[13] and an advanced GPU-based indexing algorithm Nvidia CAGRA[14].

Features

[edit]

Major similarity search related features that are available in the active 2.4.x Milvus branch[15]:

Milvus relies on heavily-modified forks of third-party open-source similarity search libraries, such as Faiss[16][17], DiskANN[18][19] and hnswlib[20].

Deployment options

[edit]

Milvus supports working in the following modes[21]:

  • embedded, which is achieved via a Python-based wrapper pymilvus[22]
  • standalone, which is designed for operating on a single machine. Docker-based images are preferred.
  • distributed, which can be deployed on a Kubernetes cluster.

GPU support

[edit]

Milvus provides GPU accelerated index building and search using Nvidia CUDA technology via Nvidia Raft library[23].

Integration

[edit]

Milvus provides clients for Java[24], NodeJS[25], Python[22], Go[26].

Milvus provides connectors for OpenAI models[27][28], HayStack[29], LangChain[30]

See also

[edit]

References

[edit]
  1. ^ "Release notes for Milvus v2.4.11".
  2. ^ a b "LF AI & Data Foundation Announces Graduation of Milvus Project". June 23, 2021.
  3. ^ "Version 1.0.0 release". Retrieved September 23, 2024.
  4. ^ "Milvus: A Purpose-Built Vector Data Management System". SIGMOD '21: Proceedings of the 2021 International Conference on Management of Data. June 18, 2021. pp. 2614–2627. doi:10.1145/3448016.3457550. ISBN 978-1-4503-8343-1.
  5. ^ "Version 2.0.0 release". Retrieved September 23, 2024.
  6. ^ "Version 2.0.x new features". Retrieved September 23, 2024.
  7. ^ "Version 2.x architecture overview". Retrieved September 23, 2024.
  8. ^ "Release notes for Milvus v2.1.0".
  9. ^ "Release notes for Milvus v2.2.0".
  10. ^ "Release notes for Milvus v2.3.0".
  11. ^ "Release notes for Milvus v2.4.0-rc.1".
  12. ^ "Hybrid Search". Retrieved September 23, 2024.
  13. ^ "Grouping search". Retrieved September 23, 2024.
  14. ^ "CAGRA: Highly Parallel Graph Construction and Approximate Nearest Neighbor Search for GPUs". August 2023. Retrieved September 23, 2024.
  15. ^ "Milvus overview". Retrieved September 23, 2024.
  16. ^ "Faiss". Retrieved September 23, 2024.
  17. ^ "The Faiss library". Retrieved September 23, 2024.
  18. ^ "DiskANN library". Retrieved September 23, 2024.
  19. ^ "DiskANN: Fast Accurate Billion-point Nearest Neighbor Search on a Single Node" (PDF). Retrieved September 23, 2024.
  20. ^ "Hnswlib - fast approximate nearest neighbor search". Retrieved September 23, 2024.
  21. ^ "Deployment options".
  22. ^ a b "Python SDK for Milvus".
  23. ^ "NVIDIA RAFT library".
  24. ^ "Java SDK for Milvus".
  25. ^ "NodeJS SDK for Milvus".
  26. ^ "Go SDK for Milvus".
  27. ^ "Getting started with Milvus and OpenAI". Mar 28, 2023. Retrieved September 23, 2024.
  28. ^ "OpenAI and Milvus simple app". Retrieved September 23, 2024.
  29. ^ "Integration HayStack + Milvus". Retrieved September 23, 2024.
  30. ^ "Milvus connector for LangChain". Retrieved September 23, 2024.