• Milvus 2.2 版本发布!


     

    经过了 4 个月的打磨,Milvus 2.2.0 于 11 月 18 日正式发版!2.2 版本推出了包括基于磁盘的近似最近邻(ANN)索引算法、从文件批量导入数据、基于角色的访问控制等新特性。进一步提升了向量搜索的稳定性、搜索速度和灵活的扩缩容能力。

    Milvus 版本Python SDK 版本Java SDK 版本Go SDK 版本Node.js SDK 版本
    2.2.02.2.02.2.0Coming soon2.2.0

    新特性

    • 从文件中批量导入数据

    Milvus 提供了一系列新的 API,用于支持从文件中更有效率地批量导入数据。现在您可以将存放于 Minio 或 S3 上的任意 JSON 文件中的数据直接导入 Milvus。请阅读从文件中导入数据章节获取更多信息。

    • 搜索结果分页

    为了避免单个 RPC 会话返回过多的搜索结果,Milvus 现已支持通过设置偏移量(offset)和关键词的方式减少返回的搜索结果数量。请阅读搜索查询章节获取更多信息。

    与其它传统的数据库类似,Milvus 现已支持 RBAC。您可以通过管理用户、角色和权限实现对 Milvus 数据库的访问控制。请阅读启用 RBAC 章节获取更多信息。

    • 配额和限制

    配额是 Milvus 用来保护系统在流量突发时免受内存溢出(OOM)和崩溃困扰的新机制。通过该机制,您可以控制数据插入、搜索速率和内存使用。请阅读配置配额和限制章节获取更多信息。

    • 集合生存时间(TTL)

    在之前的版本中,Milvus 仅支持设置集群层级的 TTL。Milvus 现已支持在创建或修改集合时设置该集合的 TTL。在设置了 TTL 的集合中的数据会在 TTL 结束后到期。请阅读创建集合修改集合章节获取更多的信息。

    • 基于磁盘的近似近邻搜索索引(Beta)

    在传统近似近邻搜索索引算法中,您需要将索引加载到内存中才能对其进行搜索。Milvus 现已支持 DiskANN,用于实现基于磁盘的大规模数据集索引能力。DiskANN 是一种基于 Vamana 图像对常驻固态磁盘的数据集进行近似近邻搜索的索引算法。使用该算法可节省大约 10 倍的内存使用量。请阅读磁盘索引章节获取更多信息。

    • 数据备份工具(Beta)

    Zilliz Inc. 向 Milvus 社区贡献了数据备份恢复工具。Milvus 2.2.0 现已支持使用命令行和调用 API 的方式实现数据库备份和恢复能力。

    问题修复与系统稳定性增强

    • 实现了 Query Coord v2,支持完全基于事件的异步分片放置策略。该版本解决了所有搜索阻塞的问题并提升了故障恢复效率。

    • 重构了 Root Coord 和 Index Coord,提供更加优雅的问题处理能力和更好的任务编排能力。

    • 修复了当 Milvus Standalone 版本重启时出现的 RocksMQ 数据保留机制不合法的问题。

    • 重构了 etcd 中 Metadata 的存储机制。通过使用新的压缩机制,etcd 中的键值对体积减少了 10 倍以上,从而解决了 etcd 内存和存储使用量大的问题。

    • 解决了持续插入或删除集合实体引发的内存使用问题。

    能力提升

    • 性能提升
      • 解决了 CPU 核数较多时无法充分使用的性能瓶颈。Milvus 现已支持多于 8 核的 CPU,极大地提升了效率。

      • 提升了搜索并发量,大幅降低了搜索时延。

      • 通过并行加载的方式,进一步降低了加载耗时。

    • 可观察性
      • 所有日志等级默认为 INFO。

      • 增加集合级别的时延指标,包括搜索、查询、插入、删除等。

    • 调试工具
      • Milvus 进一步优化了 BirdWatcher 调试工具。该工具现已支持连接 Metadata 存储并检查 Milvus 部分系统内部状态。

    其它

    • 索引和数据加载
      • 没有建立索引的集合无法加载。

      • 集合加载后不能再创建索引。

      • 集合释放后才能删除索引。

    • Flush
      • 提供 Flush API,用于对数据段进行密封并将其同步到对象存储中。频繁调用 Flush API 可能会产生过多体积较小的数据段,影响搜索性能。

      • 调用num_entities()create_index()不会自动调用 Flush API。

    • 时间旅行
      • Milvus 2.2 默认关闭时间旅行功能以节省磁盘使用量。如需开启该功能,您需要在配置文件中手动配置common.retentionDuration配置项。

    不兼容变更

    由于 Metadata 存储优化及 API 归一化的影响,Milvus 2.2 与之前发布的版本并不完全兼容。请阅读升级文档获取如何安全地将 Milvus 2.1.x 升级到 2.2.0 的方法。

  • 相关阅读:
    史上最方便的Linux教程
    Go微服务: redis分布式锁
    Cesium 源码解析 Model(四)
    解决redis connection refused connect
    【博士每天一篇文献-算法】Gradient Episodic Memory for Continual Learning
    人大金仓数据库V8 windows下安装
    Leetcode 1582. 二进制矩阵中的特殊位置
    机器学习实战:Python基于LR线性回归进行预测(十)
    背包理论之01背包
    浅析影响银行小微信贷业务精细化发展的六大要素
  • 原文地址:https://blog.csdn.net/weixin_44839084/article/details/128033046