v0.6.0

发布时间:2019-12-07

版本兼容

Milvus 版本 Python SDK 版本 Java SDK 版本
0.6.0 0.2.6 0.4.0

新增功能

  • 仅支持 CPU 的 Milvus

    Milvus v0.6.0 提供了仅支持 CPU 和支持 GPU 两个版本的 Milvus。同时支持在纯 CPU 和 GPU 环境下在 Docker 容器中编译 Milvus。#192

  • 分区表

    新增了分区表功能以确保增量数据的高性能查询。Python,Java 和 C++ SDK 中增加了表分区相关接口,支持创建/删除分区表,向量插入指定分区表,以及指定分区表的查询等。#245

  • 实验功能

    Milvus 的实验功能仍在持续开发和更新中,可能包含未知的错误。这些功能主要用于测试和用户反馈收集。

    • Mishards

      推出 Milvus 集群分片中间件 Mishards 作为分布式部署方案之一。Mishards 内部处理请求转发、读写分离、水平扩展、动态扩容,为用户提供内存和算力可以无限扩容的 Milvus 集群实例。#232

    • 新的索引类型

      支持新的索引类型如 SPTAG-KDTSPTAG-BKTRNSGIVFPQ。Milvus 集成了微软的 SPTAG 算法库,进而支持 SPTAG-KDTSPTAG-BKT 两种索引类型。RNSG 是 Milvus 在 NSG 基础上做了优化之后自研的一种索引方式。IVFPQ 是倒排索引基础上进一步利用笛卡儿积对每个倒排文件中的向量进行编码的索引方式。SPTAG#438 RNSG#554 IVFPQ#324

  • Milvus 性能测试报告

    提供了针对 IVFFLAT, IVFSQ8IVFSQ8H 等索引类型的性能测试报告

主要改进

  • Milvus 优化过的 FAISS

    在原有 FAISS 的基础上, Milvus 做了一些深层代码的优化以获得更优的查询性能和支持更多类型的索引类型,比如 IVFSQ8H。现在,我们将这部分针对 FAISS 进行优化的代码开源了。#585

  • 多张 GPU 创建索引

    支持使用多张 GPU 来创建索引以减少创建索引和整体查询的时间。你可以通过对 Milvus 配置文件中的参数 build_index_resources 来指定用于创建索引的 GPU 卡。#414

Bug 修复

  • 进一步解决了随查询次数增加,内存占用持续增加的问题。#335