Milvus 上新:支持上万个 Collection、新增 Accesslog 功能……

2024 年开年,Milvus 好消息不断。除了收获 Github 25,000 颗星的成就,Milvus 也发布了新年的第一个版本—— 2.3.4。

此次发版的主要目的是为用户提供一个高扩展性且更易用的 Milvus 版本。为此,Milvus 新增了许多易用性功能,比如:可追踪外部接口调用的 accesslog;对 parquet 数据格式的导入做了支持;引入了更清晰的错误消息;更快的加载速度以及更好的查询分片平衡能力。在扩展性方面,团队通过对内部处理逻辑进行优化以及对内存使用效率的提升,使得 Milvus 集群目前可支持多达 10,000 个 Collection,可以满足大数据量和多租户场景下的要求。

以下将对这些主要特性和重点优化进行解释说明:

支持上万的 Collection/Partition 数量

Collection/Partition 是 Milvus 管理逻辑集合的主要单元,类似关系型数据库里 Table/Partition 的概念。虽然理论上 Milvus 能支持 65,536 个 Collection,但在实际使用中,随着 Collection 数量的增加,系统内部的开销会变大,一些资源可能会存在瓶颈,比如用于写入的 kafka topic 数量,以及 time tick 带来的 CPU 开销等。

因此 Collection 的实际数量限制和硬件规格以及负载有关,小于理论值。在某些场景下,用户希望尽可能多支持的 Collection,比如:知识库场景下用户希望用不同的 Collection 存储不同的主题或信息来源的数据;有的用户将 Milvus 作为数据中台并以 Collection 粒度对外提供多租户的能力……这些都对 Collection 数量提出了更高的需求。在这个版本里,我们针对系统做了大量优化和测试工作,将 Collection 的数量限制提升了一个档次,从之前的 4096 提升到目前可以稳定支持上万 Collection,该能力已经能满足大多知识库和多租户的场景需求。

新增访问日志 Access log 功能

Milvus 的访问日志功能允许服务端记录接口调用的详细信息,每一次用户通过 gRPC 发起的请求都会被记录下来,这有助于监控系统状态和追踪可能出现的问题。通过这一功能,用户可以进行:

  • 安全审计:通过访问日志来检查历史数据访问的合法性和安全性。

  • 错误排查:当出现问题时,利用日志可以快速查看报错信息,并了解接口调用的上下文,帮助定位和解决问题。

  • 性能分析:通过监控响应时间,用户可以识别异常查询和优化慢查询,提升整体性能。

目前,访问日志只记录通过 gRPC 协议调用的各类接口请求,RESTful API 请求的访问日志将在后续版本进行支持。相关使用请见(https://milvus.io/docs/configure_access_logs.md)。

数据导入支持 Parquet 格式

Parquet 是一种广泛使用的列式存储格式,能高效处理大批量数据,尤其广泛应用在数据分析和机器学习领域。通过支持 Parquet 格式的数据导入,我们为用户提供了更加灵活和高效的数据处理能力。

对于正在使用 Parquet 格式存储和处理大规模数据集的用户来说,这意味着现在可以无缝地将其数据集成到 Milvus 的向量数据库中,而无需进行繁琐的数据格式转换。这不仅简化了数据的导入过程,还大大缩短了从数据准备到向量检索的时间。同时 Milvus 的数据格式转换工具 BulkWriter 也将支持 Parquet 格式并作为其默认输出格式。

兼容性变更

为了减少资源消耗,新版本 Milvus 默认关闭了在 Search/Query 接口中对 Partition Names 参数做正则表达式的支持。但是,用户依旧可以通过配置 proxy.partitionNameRegexp 重新启用此功能。

各类优化

此外,Milvus 2.3.4 还进行了各式优化,包括:

  • 提升数据检索和可变长度数据处理的内存效率,这将帮助系统更稳定的运行;

  • 将错误信息以总分(Summary & Details)方式组织,使得 Error message 更易读;

  • 完善 RBAC 功能,支持自定义 built-in role,新增对 Partition 级别的权限管理;

  • interimIndex 开关额外支持构建 Binlog Index 临时索引以优化持续写入场景下分布式集群上做并发查询的性能。

回顾过去的半年,Milvus 一直保持着高效的迭代速度,大版本也从 2.2 升级到了 2.3,新增了不少功能。发版方面,对于小版本,我们一般着眼于提升稳定性和易用性,让用户用的省心安心;而在大版本上,一方面,我们会贴合用户使用场景,另一方面会紧跟技术前沿保持创新,发布一批全新的功能。

这里提前做一个预告,Milvus 的下一个大版本 2.4 正在路上,届时会发布一批重磅功能,包括但不限于:多向量多模态的支持 Multi-Vectors、稀疏向量 Sparse Embedding、分类聚合 Group By、倒排索引 Inverted Index、数据迁移容灾工具 CDC 等……敬请期待!

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/633543.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CTF CRYPTO 密码学-2

题目名称:crypto1 题目描述: 字符 ZZZZ X XXZ ZZ ZXZ Z ZXZ ZX ZZX XXX XZXX XXZ ZX ZXZZ ZZXZ XX ZX ZZ 分析 此字段是由Z和X组成的字符,联想到莫斯密码是由.和-组成的所以接下来可以尝试莫斯密码解题 解题过程: Step1&#xf…

c++ 指针的初始化

为指针正确赋值可以避免未定义行为(如野指针)。指针可以指向变量、数组、另一个指针(多级指针)、函数等。 指针的初始化可以在声明时进行,也可以在声明之后进行。 初始化为 nullptr 从 C11 开始,建议初始…

财务涉及到的金额之间的关系

财务涉及到的金额之间的关系 无税金额 含税金额 / (1 税率)含税金额 无税金额 * (1 税率)税额 无税金额 * 税率 含税金额 / (1 税率) 税率税率{0.03、0.13…}

2019年认证杯SPSSPRO杯数学建模C题(第二阶段)保险业的数字化变革全过程文档及程序

2019年认证杯SPSSPRO杯数学建模 基于统计建模的车险业数字变革研究 C题 保险业的数字化变革 原题再现: 车险,即机动车辆保险。保险自身是一种分散风险、消化损失的经济补偿制度,车险即为分散机动车辆在行驶过程中可能发作的未知风险和损失…

【Vue】Vue 路由的配置及使用

目录捏 前言一、路由是什么?1.前端路由2.后端路由 二、路由配置1.安装路由2.配置路由 三、路由使用1.route 与 router2. 声明式导航3. 指定组件的呈现位置 四、嵌套路由(多级路由)五、路由重定向1.什么是路由重定向?2.设置 redire…

奇安信天擎 rptsvr 任意文件上传漏洞复现

0x01 产品简介 奇安信天擎是奇安信集团旗下一款致力于一体化终端安全解决方案的终端安全管理系统(简称“天擎”)产品。通过“体系化防御、数字化运营”方法,帮助政企客户准确识别、保护和监管终端,并确保这些终端在任何时候都能可信、安全、合规地访问数据和业务。天擎基于…

C++类与对象【友元】

🌈个人主页:godspeed_lucip 🔥 系列专栏:C从基础到进阶 🎄1 友元🥑1.1 全局函数做友元🥑1.2 类做友元🥑1.3 成员函数做友元 🕮2 总结 🎄1 友元 生活中你的家…

ContentNegotiationManagerFactoryBean 内容协商

一.什么是内容协商 简单点说,就是同一资源,可以有多种表现形式,比如xml、json等,具体使用哪种表现形式,是可以协商的。 这是RESTfull的一个重要特性,Spring Web MVC也支持这个功能。 1.Spring MVC REST是如何决定采用…

深入了解性能优化(web应用)

影响一个系统性能的方方面面 一个 web应用不是一个孤立的个体,它是一个系统的部分,系统中的每一部分都会影响整个系统的性能 一.常用的性能评价/测试指标 1.响应时间 提交请求和返回该请求的响应之间使用的时间,一般比较关注平均响应时间。 常用操作的响应时间列表: 操作 响应…

深入理解Scrapy中XPath的`following-sibling`选择器

什么是XPath? 在深入following-sibling选择器之前,先简单了解一下XPath。XPath是一种在XML文档中查找信息的语言。它同样适用于HTML文档,因为HTML是XML的一种形式。XPath使用路径表达式在XML文档中进行导航。在网络爬虫框架Scrapy中&#xf…

探索 2024 年新副业:无人饮品机的新风向

随着科技的迅猛发展,无人饮品机作为一种全新的商业模式,正逐渐成为 2024 年副业的新风向。如果你还没有了解过这种全新的副业,那么现在是时候深入了解一下了。 D咖无人饮品机的优势在于其 24 小时不间断的营业模式,它可以在你睡觉…

Educational Codeforces Round 161 (Rated for Div. 2)补题

Tricky Template(Problem - A - Codeforces) 题目大意:现有三个模板字串a,b,c,都由小写字母组成,问能否找到一个字串s,使s与a,b匹配,与c不匹配,匹配的条件如下: 如果s的某位为小写…

边缘计算和联邦学习的联系

1. 什么是边缘计算? 边缘计算(Edge Computing)是一种计算模型,其主要思想是将计算、存储和数据处理能力推送到离数据源近的边缘设备,而不是依赖于远程的云服务器。这样做的目的是减少数据传输延迟、提高响应速度&…

web前端项目-中国象棋【附源码】

中国象棋 【中国象棋】是一款历史悠久、深受人们喜爱的策略类游戏。在Web前端技术中,我们可以使用HTML、CSS和JavaScript等语言来制作一款中国象棋游戏。玩家使用棋子(帅/相/士/炮/马/车/炮/卒)在棋盘上相互对弈,将对手的“帅”棋…

工作流管理框架airflow-安装部署教程

1 概述 Airflow是一个以编程方式编写,用于管理和调度工作流的平台。可以帮助你定义复杂的工作流程,然后在集群上执行和监控这些工作流。 Airflow计划程序在遵循指定的依赖项,同时在一组工作线程上执行任务。丰富的命令实用程序使在DAG上执行复杂的调度…

国产开源模型标杆,能力比肩ChatGPT!书生·浦语2.0发布,支持免费商用

1月17日,新一代大语言模型书⽣浦语2.0(InternLM2)正式发布并开源。 2种参数规格、3种模型版本,共计6个模型,全部免费可商用。 它支持200K超长上下文,可轻松读200页财报。200K文本全文范围关键信息召回准确…

Android13预装APP到data分区

修改步骤与Android11是差不多的,只是有部分代码所在位置不一样。 Android 11内置APP到data/app Android 8(O)预置APP到data/app 默认内置应用到data会出错 1970-01-01 08:03:54.499 1177-1177/system_process I/PackageManager: /data/app/xx changed; collecting…

Springboot日志框架logback与log4j2

目录 Springboot日志使用 Logback日志 日志格式 自定义日志格式 日志文件输出 Springboot启用log4j2日志框架 Springboot日志使用 Springboot底层是使用slf4jlogback的方式进行日志记录 Logback日志 trace:级别最低 debug:调试级别的&#xff0c…

Windows平台反调试技术学习

前言 前俩天的学习记录Windows上面的反调试学习,主要是参考《恶意代码实战分析》和《加密与解密》里面的,给每个小技术都写了程序示例,自己编译反调试了一遍。对于加解密一书是还有很多不理解的地方的,目前只能记录到这了&#x…

Nodejs 问题排查

前言 用于记录在使用 node 过程中遇到的问题,并尝试寻求解决方案。 问题 问题1 问题描述 访问前端页面时,页面返回 502/504。查看日志后发现,在一些出现问题的时间节点,会出现以下日志: epoll_wait() reported t…