Milvus是一個開源的矢量數(shù)據(jù)庫,為人工智能應用和嵌入的相似性搜索提供動力,Milvus使非結構化數(shù)據(jù)搜索更容易獲得,并提供一致的用戶體驗,無論部署環(huán)境如何。
全面的相似度指標
Milvus 支持各種常用的相似度計算指標,包括歐氏距離、內(nèi)積、漢明距離和杰卡德距離等。您可以根據(jù)應用需求來選擇最有效的向量相似度計算方式。
業(yè)界領先的性能
Milvus 基于高度優(yōu)化的 Approximate Nearest Neighbor Search (ANNS) 索引庫構建,包括 faiss、 annoy、和 hnswlib 等。您可以針對不同使用場景選擇不同的索引類型。
動態(tài)數(shù)據(jù)管理
您可以隨時對數(shù)據(jù)進行插入、刪除、搜索、更新等操作而無需受到靜態(tài)數(shù)據(jù)帶來的困擾。
近實時搜索
在插入或更新數(shù)據(jù)之后,您可以幾乎立刻對插入或更新過的數(shù)據(jù)進行搜索。Milvus 負責保證搜索結果的準確率和數(shù)據(jù)一致性。
高成本效益
Milvus 充分利用現(xiàn)代處理器的并行計算能力,可以在單臺通用服務器上完成對十億級數(shù)據(jù)的毫秒級搜索。
支持多種數(shù)據(jù)類型和高級搜索
Milvus 的數(shù)據(jù)記錄中的字段支持多種數(shù)據(jù)類型。您還可以對一個或多個字段使用高級搜索,例如過濾、排序和聚合。
高擴展性和可靠性
您可以在分布式環(huán)境中部署 Milvus。如果要對集群擴容或者增加可靠性,您只需增加節(jié)點。
云原生
您可以輕松在公有云、私有云、或混合云上運行 Milvus。
簡單易用
Milvus 提供了易用的 Python、Java、Go 和 C++ SDK,另外還提供了 RESTful API。
新功能
#4564支持在get_entity_by_id()方法調(diào)用中指定分區(qū)。
#4806 支持在delete_entity_by_id()方法的調(diào)用中指定分區(qū)。
#4905 增加了release_collection()方法,從緩存中卸載一個特定的集合。
改進之處
#4756 提高了get_entity_by_id()方法調(diào)用的性能。
#4856 將hnswlib升級到v0.5.0。
#4958提高了IVF索引訓練的性能。
修復的問題
#4778 在Mishards中訪問向量索引失敗。
#4797 合并具有不同topK參數(shù)的搜索請求后,系統(tǒng)返回錯誤結果。
#4838 服務器不會立即響應空集合上的索引構建請求。
#4858 對于支持GPU的Milvus,系統(tǒng)在有大topK(> 2048)的搜索請求時崩潰。
#4862 一個只讀的節(jié)點在啟動過程中會合并片段。
#4894 布隆過濾器的容量不等于它所屬段的行數(shù)。
#4908 在放棄一個集合后,GPU緩存沒有被清理。
#4933 系統(tǒng)需要很長時間才能為一個小段建立索引。
#4952 未能將時區(qū)設置為 "UTC + 5:30"。
#5008 在連續(xù)、并發(fā)的刪除、插入和搜索操作中,系統(tǒng)隨機崩潰。
#5010 對于支持GPU的Milvus,如果nbits≠8,在IVF_PQ上查詢失敗。
#5050 get_collection_stats()對仍在建立索引過程中的段返回錯誤的索引類型。
#5063 當一個空段被刷新時,系統(tǒng)會崩潰。
#5078 對于支持GPU的Milvus,在2048、4096或8192維度的向量上創(chuàng)建IVF索引時系統(tǒng)崩潰。