ModaHub魔搭社区:向量数据库Milvus产品问题(二)

news2024/9/25 23:12:50

目录

为什么向量距离计算方式是内积时,搜索出来的 top1 不是目标向量本身?

对集合分区的查询是否会受到集合大小的影响,尤其在集合数据量高达一亿数据量时?

如果只是搜索集合中的部分分区,整个集合的数据会全部加载到内存吗?

对各个数据段的检索是并行处理的吗?

Milvus 中如何选择向量索引的类型?

Milvus 可以在同一个集合中的不同分区上建立不同索引吗?

Milvus 中支持新增向量后再建索引吗?

索引 IVF_SQ8 和 IVF_SQ8H 在召回率上有区别吗?

Milvus 中 FLAT 索引和 IVF_FLAT 索引的原理比较?

创建索引立即查询,为什么内存会突然增长?

建立集合后,index_file_size 和 metric_type 还支持修改吗?

向量插入后自动落盘间隔时间是多少?

如果设置了 preload_collection,必须是等集合全部加载到内存,服务才能访问吗?


为什么向量距离计算方式是内积时,搜索出来的 top1 不是目标向量本身?

向量距离计算方式用内积时,如果向量未归一化,会出现这样的情况。

对集合分区的查询是否会受到集合大小的影响,尤其在集合数据量高达一亿数据量时?

不会。如果你在搜索时指定了分区,Milvus 只会在相应分区进行搜索。

如果只是搜索集合中的部分分区,整个集合的数据会全部加载到内存吗?

不会,只加载指定的分区里的数据。

 

对各个数据段的检索是并行处理的吗?

一般而言,Milvus 对单个数据段内的查询是并行的,多个数据段的处理根据发行版本略有不同。

假设一个集合存在多个数据段,当查询请求到达时:

  • CPU 版 Milvus 会对数据段读取任务和段内查询任务进行流水线处理。
  • GPU 版 Milvus 会在 CPU 版的基础上,将多个数据段分配给各个 GPU 处理。

可参阅文章:Milvus 开源向量数据库 ANNS。

Milvus 中如何选择向量索引的类型?

索引需要根据具体场景和需求去选择。详见 如何选择索引类型。

Milvus 可以在同一个集合中的不同分区上建立不同索引吗?

不可以。同一个集合在某一刻只能有一种索引。

Milvus 中支持新增向量后再建索引吗?

 

支持。Milvus 中数据是分文件存储的,后续新增向量会存在新的数据文件中。该文件达到一定量后会自动触发建立索引,生成一个新的索引文件,不会影响之前已经建立过的索引。

索引 IVF_SQ8 和 IVF_SQ8H 在召回率上有区别吗?

对于相同的数据集,IVF_SQ8 和 IVF_SQ8H 的召回率一致。

Milvus 中 FLAT 索引和 IVF_FLAT 索引的原理比较?

把 FLAT 和 IVF_FLAT 做比较,可以这么估算:

已知 IVF_FLAT 索引是把向量分成 nlist 个单元。假设用默认的 nlist = 16384,搜索的时候是先用目标向量和这 16384 个中心点计算距离,得到最近的 nprobe 个单元,再在单元里计算最近向量。而 FLAT 是每条向量和目标向量计算距离。

所以当总的向量条数约等于 nlist 时,两者的计算量相当,性能也差不多。而随着向量条数达到 nlist 的 2 倍、3 倍、n 倍之后,IVF_FLAT 的优势就越来越大。

可参阅 如何选择索引类型。

创建索引立即查询,为什么内存会突然增长?

这是因为 Milvus 在进行搜索时会将新生成的索引文件加载到内存,由于加载的索引文件和用于生成索引文件的原始向量文件总和小于 cache.cache_size 的上限,原始向量数据暂未被系统从内存释放。

建立集合后,index_file_size 和 metric_type 还支持修改吗?

不支持。

向量插入后自动落盘间隔时间是多少?

1 秒。

如果设置了 preload_collection,必须是等集合全部加载到内存,服务才能访问吗?

是的。如果是在 server_config.yaml 里设置的,那在启动 Milvus 时就会加载好数据后才开始提供服务。

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

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

相关文章

表单(form) post 方式提交时的编码与乱码(上)

在上一篇章中谈论了表单以 get 提交时的编码与乱码问题, 这一章中将讨论以 post 方式提交时的编码与乱码问题. 在前面也同时提到, 表单有一个叫 enctype 的属性, 它有两个值, application/x-www-form-urlencoded 和 multipart/form-data. 这一属性实际只对 post 方式起作用, …

@Configuration 和 @Component 的区别 ,别再瞎用了!

一句话概括就是 Configuration 中所有带 Bean 注解的方法都会被动态代理,因此调用该方法返回的都是同一个实例。 理解:调用Configuration类中的Bean注解的方法,返回的是同一个示例;而调用Component类中的Bean注解的方法&#xff…

List, Set, Ordered-SetHash

前言 本文小结Redis中List,Set,ZSet和Hash四种数据类型的,基本特点,使用场景和实现方式。 一、List 1. 基本特点 a. 作为数组,基于下标索引操作, 但支持正向索引和反向索引; b. 作为链表, 支持高效插入&#xff1b…

信息安全-应用安全-定制化白盒检测 | 越权漏洞治理分享

目录 一、背景 二、面临的挑战 三、治理目标 四、解决方案 4.1 系统架构 4.2 鉴权函数 4.3 告警识别 4.4 鉴权分 五、未来的白盒检测方向 六、越权治理 七、小结 一、背景 在漏洞扫描领域,主流的扫描方式分为黑盒扫描和白盒扫描,其中源代码安…

MYSQL-主键外键约束

主键语法: 在创建表指定列数据类型时在后面加(可以结合AUTO_INCREMENT) PRIMARY KEY 主键要短,可唯一标识记录,且永不改变。 外键语法: 第一个column_name是被指定外键的本表列名 table_name是主键的表名 第二个column_name是主键列名 FOREIGN KE…

使用DataX同步数据(小白步骤,一看就懂)

详细文档说明,及图文讲解 ​​​​​​datax的异构数据同步资源-CSDN文库 Datax简介 下载datax软件,从开源镜像下载

python接口自动化(七)--状态码详解对照表(详解)

简介 我们为啥要了解状态码,从它的作用,就不言而喻了。如果不了解,我们就会像个无头苍蝇,横冲直撞。遇到问题也不知道从何处入手,就是想找别人帮忙,也不知道是找前端还是后端的工程师。 状态码的作用是&…

串口接收不定长数据的实现

使用串口进行数据的收发在嵌入式产品中是很常用的一种通信方式,因为串口的简单使用,很容易就被选为产品中数据交互的通信手段。 基于串口进行开发的功能有很多,比如同类/不同类产品之间的通信,RS485通信,RS232通信方式…

(二)线程的六种状态及上下文切换

(二)线程的六种状态及上下文切换 2.1 操作系统中线程的状态及切换2.2 Java 中线程的六种状态01、NEW(线程尚未启动)02、RUNNABLE(运行中)03、BLOCKED(阻塞状态)04、WAITING&#xff…

移动端微信小程序学习

目录 小程序和web端的不同 小程序的宿主环境 通信 组件 视图容器​编辑 text组件 button image ​编辑 API api三大分类 模板语法 事件绑定 ​编辑 事件传参​编辑 bindinput 条件渲染 列表渲染 ​编辑 全局配置 window 页面配置 网络数据请求 ​编辑 GET请求 POST…

近轴成像的相关性质

本文介绍薄透镜近轴成像的一些性质,所谓近轴成像,就是入射光线非常靠近光轴,意味着入射角很小。在介绍这些性质之前,我们先来看看三角函数的泰勒展开: sin ⁡ θ θ − θ 3 3 ! θ 5 5 ! − θ 7 7 ! . . . \sin{\…

#10047. 「一本通 2.2 练习 3」似乎在梦中见过的样子(内附封面)

题目描述 原题来自:2014 年湖北省队互测 Week2 「Madoka,不要相信 QB!」伴随着 Homura 的失望地喊叫,Madoka 与 QB 签订了契约。 这是 Modoka 的一个噩梦,也同时是上个轮回中所发生的事。为了使这一次 Madoka 不再与…

JVM类加载机制-JVM(一)

我们运行一个.class文件,windows下的java.exe调用底层jvm.dll文件创建java虚拟机(c实现)。创建一个引导类加载器实例(c实现)C调用java代码Launcher,该类创建其他java类加载器。Launcher.getClassLoader()调…

【算法】最长公共子序列编辑距离(两个序列之间的DP)

文章目录 最长公共子序列(LCS)编辑距离(Edit Distance)总结相关题目练习583. 两个字符串的删除操作 https://leetcode.cn/problems/delete-operation-for-two-strings/712. 两个字符串的最小ASCII删除和 https://leetcode.cn/prob…

BWA序列比对方法丨针对较大基因组的并行计算和性能优化方式,利用多线程和负载均衡策略提高效率

BWA 序列比对 高通量测序技术日新月异发展迅猛,产生了数亿级大数据,生命的世界由DNA序列ATCG组成,正如计算机的世界由二进制01组成。 高通量测序的工作实质是把一本生命字典撕成碎片,然后每人手里拿一片,招募成千上万…

【洛谷】B3644 【模板】拓扑排序 / 家谱树(用邻接表存储和其他题解不一样哦)

本薅蒻通过这次学到的知识点(本人认为好用的东西): 1: (情况适用于输入的x为0时结束输入) 2: 先输出“t”(就是因为这里wa了好几发,555555) 原本是在 if里面输出的,这…

mysql通过存储过程解决ERROR 1060 (42S21): Duplicate column的问题

问题描述 实际的日常开发工作中,经常需要对现有表的结构作出变更,涉及到sql相关的操作,基本都通过初始化脚本来完成,如果初始化脚本运行失败或者遇到其他问题,可能导致sql部分执行,不分失败的问题&#xf…

ModaHub ——向量数据库Milvus特征向量和预写式日志教程

目录 特征向量 什么是特征向量 特征向量的优势 应用领域 预写式日志 数据可靠性 缓冲区设置 旧日志删除 特征向量 什么是特征向量 向量是具有一定大小和方向的量,可以简单理解为一串数字的集合,就像一行多列的矩阵,比如&#xff1a…

领域事件驱动(三)子域

上一章对领域层的相关概念做了阐述 应用服务 应用层作为展现层与领域层的桥梁,是用来表达用例和用户故事的主要手段。 应用层通过应用服务接口来暴露系统的全部功能。在应用服务的实现中,它负责编排和转发,它将要实现的功能委托给一个或多…

蓝桥杯刷题-1

文章目录 1.蓝桥杯官网2.蓝桥杯题目进入界面 及 题目详情3.题目解答过程及思路4.运行结果图5.解答代码展示6.ASCII表图例 大家好,我是晓星航。今天为大家带来的是 蓝桥杯刷题 - 1 -单词分析 相关的讲解!😀 1.蓝桥杯官网 题库 - 蓝桥云课 (l…