Milvus向量数据库01-基础概念

Milvus向量数据库01-基础概念

Zilliz Cloud 集群由全托管 Milvus 实例及相关计算资源构成。您可以在 Zilliz Cloud 集群中创建 Collection,然后在 Collection 中插入 Entity。Zilliz Cloud 集群中的 Collection 类似于关系型数据库中的表。Collection 中的 Entity 类似于表中的记录。

1-集群

  • 集群链接

在 Zilliz Cloud 上创建集群时,您需要选择集群 CU 类型。CU 类型有 2 种选项:性能型和容量型。不同 CU 类型的区别,请阅读选择合适的 CU 类型。

确定 CU 类型后,您还需要选择 CU 大小。CU 大小决定了集群可容纳的 Collection 数量。在 Dedicated 集群中,每个计算单元(CU)可最多容纳 64 个 Collection,并且每个集群中的 Collection 总数不能超过 4096。有关限制的更多信息,请阅读使用限制。

集群中的所有 Collection 共享 CU 资源。为节省 CU 资源,我们推荐您将一些不再使用的 Collection 从 CU 中释放出来。Collection 被释放后,其中的数据被转移到磁盘存储,从而可以释放 CU 资源以供其他已加载的 Collection 使用。需要查询已被卸载的 Collection 时,您可以将其重新加载至内存中。请注意,Collection 加载需要等待一段时间,因此我们不推荐频繁卸载和加载 Collection。

2-Collection

  • Collection链接

Collection 是一张二维数据表,包含固定列数和可变行数。Collection 数据表中的每 1 列对应 1 个字段,每 1 行表示 1 个 Entity。

下图中的示例 Collection 包含 6 个 Entity 和 8 个字段。

MVBWbzkuyonO5tx99TscU93Knfg

字段

  • 字段链接

通常我们会根据属性(如大小、重量、位置等)描述对象。对象属性类似于 Collection 中的字段。

Collection 中,主键是最特殊的字段,每个主键字段的值唯一且不重复。每 1 个主键都可以对应 Collection 中的 1 条 Entity 记录。如上图所示, 示例 Collection 中的 id 字段是主键。第 1 个 ID 0 对应标题为《The Mortality Rate of Coronavirus is Not Important》的文章。Collection 中的任何其他文章的 ID 都不会为 0

Schema

  • Schema链接

每个字段都具有自己的属性——字段中数据类型和相关限制(如向量维度和相似性类型)。通过定义字段及顺序,您的 Collection 会有 1 个 Schema,也就是 1 个数据结构框架。Collection Schema 类似于传统数据表的结构。

关于 Schema 中支持使用的数据类型,可参考Schema。

索引

  • 索引链接

与 Milvus 实例不同,Zilliz Cloud 集群仅支持 AUTOINDEX 索引。该索引类型针对 Zilliz Cloud 提供的 3 种 CU 进行了优化。更多详情,请阅读 AUTOINDEX 。

3-Entity

  • Entity链接

Collection 中的 Entity 是指共享相同字段集的数据记录。存储在每个字段中的数据共同形成 1 个 Entity。

您可以向 Collection 中添加任意数量的 Entity。但是,随着 Entity 数量和维度增加,Entity占用的内存大小也会增加,影响 Collection 的搜索性能。

更多内容,可参考本手册 Schema 一节以合理规划您的 Collection。

4-Load 和 Release

  • Load 和 Release链接

对 Collection 执行 Load 操作是在 Collection 中进行 Search 和 Query 的前提条件。在加载 Collection 时,Zilliz Cloud 会将所有向量列的索引文件和所有标量列的数据加载到内存,从而快速响应搜索和查询请求。

由于 Search 和 Query 操作会占用较多的内存资源。为了减少资源消耗,您可以对暂时不需要使用的 Collection 执行 Release 操作,将相关数据从内存中释放出来。

5-Search 与 Query

  • Search 与 Query链接

在为 Collection 创建索引并将其加载到内存后,您就可以通过输入查询向量、选择相似性类型的方式对 Collection 中的 Entity 进行相似性搜索。例如,您可以将文本 “Interesting Python demo” 对应的向量表示作为查询向量进行搜索,Zilliz Cloud 会在 Collection 中进行相似性查询并返回所有标题语义与查询向量相似的 Entity。

在 Search 和 Query 过程中,您也可以使用过滤条件对某些标量字段进行过滤,找到符合指定条件的所有 Entity。

更多搜索和查询详情,请阅读Search, Query 和 Get。

6-Partition

  • Partition链接

Partition 是从 Collection 中划分而来,和 Collection 保持相同的列数,只包含 Collection 的部分 Entity。

通过将 Entity 分别存入不同的 Partition,Milvus 商业版实现了对 Entity 的隔离与分组。在按 Partition 进行检索时,由于无须关注 Collection 中其它 Partition 的数据,检索效率得到了较大的提升。

关于 Partition 的更多内容,可以查看管理 Partition。


7-内容总结

以下是文章内容要点的思维导图:

Zilliz Cloud 开发指南
集群
Collection
Entity
Load 和 Release
Search 与 Query
Partition
全托管 Milvus 实例
计算资源
CU 类型选择
CU 大小选择
Collection 数量限制
资源共享
Collection 释放与重新加载
二维数据表
字段
主键
Schema
索引
Entity 存储
字段属性
数据记录
字段数据
Entity 数量与性能
Load 操作
Release 操作
内存资源管理
相似性搜索
查询向量
相似性类型
过滤条件
标量字段过滤
Entity 分组
检索效率提升

详细知识点如下:

集群

  • 全托管 Milvus 实例:Zilliz Cloud 提供的全托管 Milvus 实例。
  • 计算资源:与 Milvus 实例相关的计算资源。
  • CU 类型选择:性能型和容量型两种选项。
  • CU 大小选择:决定了集群可容纳的 Collection 数量。
  • Collection 数量限制:每个 CU 最多 64 个 Collection,总数不超过 4096。
  • 资源共享:所有 Collection 共享 CU 资源。
  • Collection 释放与重新加载:释放 Collection 以节省资源,需要时重新加载。

Collection

  • 二维数据表:包含固定列数和可变行数。
  • 字段:描述对象属性,类似于数据库表中的列。
  • 主键:每个主键字段的值唯一且不重复。
  • Schema:定义字段及顺序的数据结构框架。
  • 索引:Zilliz Cloud 集群仅支持 AUTOINDEX 索引。
  • Entity 存储:Collection 中的 Entity 是共享相同字段集的数据记录。
  • 字段属性:字段中数据类型和相关限制。

Entity

  • 数据记录:存储在每个字段中的数据共同形成 1 个 Entity。
  • 字段数据:每个字段中存储的数据。
  • Entity 数量与性能:Entity 数量和维度增加会影响 Collection 的搜索性能。

Load 和 Release

  • Load 操作:在 Collection 中进行 Search 和 Query 的前提条件。
  • Release 操作:减少资源消耗,将数据从内存中释放出来。
  • 内存资源管理:通过 Load 和 Release 操作管理内存资源。

Search 与 Query

  • 相似性搜索:通过输入查询向量、选择相似性类型进行搜索。
  • 查询向量:用于搜索的向量表示。
  • 相似性类型:选择不同的相似性类型进行搜索。
  • 过滤条件:使用过滤条件对标量字段进行过滤。
  • 标量字段过滤:找到符合指定条件的所有 Entity。

Partition

  • Entity 分组:从 Collection 中划分而来,包含部分 Entity。
  • 检索效率提升:按 Partition 进行检索,提升检索效率。

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

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

相关文章

golang实现简单的redis服务

golang 手搓redis服务器仓库地址:实现思路: golang 手搓redis服务器 仓库地址: 仓库: https://github.com/dengjiayue/my-redis.git 实现思路: ● 协议: tcp通信 ● 数据包: 长度(4byte)方法(1byte)数据json ● 数据处理: 单线程map读写 ○ 依次处理待处理队列的请求(chan)…

从变更到通知:使用Python和MongoDB Change Streams实现即时事件监听

MongoDB提供了一种强大的功能,称为Change Streams,它允许应用程序监听数据库中的变更事件,并在数据发生变化时立即做出响应。这在mysql数据库是不具备没有这个功能的。又如:我们在支付环节想一直监听支付回调的状态,就…

【AWR软件】AWR 如何创建测量图

文章目录 前言流程 前言 微博虚拟 实验 流程 project -> graph -> 右键 new graph

ARMv8-A MacOS调试环境搭建

文章目录 简介安装qemu交叉编译工具链C语言插件 gdb调试测试代码添加调试配置 JLink 调试树莓派 简介 本节主要介绍基于Visual Studio Code在MacOS下调试环境的搭建,Linux发行版上的过程也类型,它主要使用到以下工具链: aarch64 架构的交叉…

qt基本部分控件用法(一)

前言: 以前 windows下做工具主要是MFC,趁有点空时间,研究了QT,感觉跟MFC 差不多,VS 比 QT CREATOR 还是强大,不过QT可以跨平台,功能更强大,MFC 只能在win平台下.; 1:环境…

【hacker送书第19期】自动化测试框架设计

文章目录 前言内容简介获取方式总结 前言 在当今这个高速发展的互联网时代,软件测试已成为保障软件质量的重要环节。而自动化测试更是测试领域中不可或缺的一环。这本书的出版,正是为了帮助我们更好地理解和应用自动化测试框架设计,提升软件…

【Git】:标签管理

目录 理解标签 创建标签 操作标签 理解标签 标签的作用 标记版本:标签 tag ,可以简单的理解为是对某次 commit 的⼀个标识,相当于起了⼀个别名。例如,在项目发布某个版本的时候,针对最后⼀次 commit 起⼀个 v1.0 这样…

[Maven]下载安装、使用与简介

很多框架的下载使用的流程和思路是差不多的,这里以maven做详细介绍。 下载安装与配置变量 下载 首先,我们要使用maven,必须先下载它的相关文件。想要下载,我们可以直接搜索maven。找到它的官网。这里不绕弯子,直接给出…

光猫开DMZ教程

本教程以移动光猫未例,具体操作以实际光猫为准 1、登录移动光猫管理后台 打开浏览器,在浏览器地址栏输入移动光猫登录管理地址192.168.1.1或者tplogin.cn 按“回车键”打开登录页面,然后输入路由器管理密码登录。 移动光猫登录页面 超级密…

高阶数据结构--B树B+树实现原理B树模拟实现--Java

目录 一、B-树概念 二、B-树插入分析 1.用序列{53, 139, 75, 49, 145, 36, 101}构建B树的过程如下: 2.插入过程总结 三、B树插入实现 四、B树 1.B树概念 2.B树的特性 五、B树应用 1.索引 2.Mysql索引 3.InnoDB 一、B-树概念 1970 年, R.Bayer 和…

tsx: tsx以及在表格的使用?

问&#xff1a; tsx文件render:(scope)>{ return ( <div onclick{handleCLick(scope.$index1)}> ) } const handleCllick (i)>{ alert(i) }为什么进入界面就执行了handleClick函数&#xff1f;我希望点击在执行 回答&#xff1a; 问&#xff1a; 我只希望给这一…

MySQL报错:Illegal mix of collations

背景 最近项目上MySQL库运行过程中遇到SQL执行报错&#xff1a;java.sql.SQLException: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLICIT) for operation ‘’ 分析 询问DBA后&#xff0c;被告知是关联查询的表排序规则不一致导致…

FaRM译文

No compromises: distributed transactions with consistency, availability, and performance Aleksandar Dragojevic, Dushyanth Narayanan, Edmund B. Nightingale, Matthew Renzelmann, Alex Shamis, Anirudh Badam, Miguel Castro Microsoft Research 目录 摘要 1. 引…

spark sql 环境安装,java 默认路径和 安装配置!

yum安装java 查看默认路径 update-alternatives --config java # Java 环境变量 export JAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64/jreexport PATH$JAVA_HOME/bin:$PATH# Spark 环境变量 export SPARK_HOME/home/vagrant/soft/sparkexport PATH…

Keepalived配置文件中未指定MASTER节点会出现什么现象?

Keepalived配置文件中未指定MASTER节点会出现什么现象&#xff1f; 在 Keepalived 配置文件中&#xff0c;如果没有明确指定 MASTER 节点的配置&#xff0c;可能会导致 VRRP&#xff08;Virtual Router Redundancy Protocol&#xff09; 协议无法正常工作&#xff0c;具体表现如…

注塑机数据采集的3种方案优缺点对比海天注塑机采集震雄科霸科强数据采集注塑机数据采集网关注塑机联网

注塑机数据采集是工业自动化和智能制造中的一个重要环节&#xff0c;它可以帮助企业监控生产过程、优化生产效率、减少故障停机时间&#xff0c;并提高产品质量。你提到的三种采集模式各有特点和应用场景&#xff1a; IO采集&#xff1a; 这种模式主要通过采集注塑机的输入/输出…

TPAMI 2023:When Object Detection Meets Knowledge Distillation: A Survey

摘要 目标检测&#xff08;Object Detection&#xff0c;OD&#xff09;是计算机视觉中的一项关键任务&#xff0c;多年来涌现出了众多算法和模型。尽管当前 OD 模型的性能有所提升&#xff0c;但它们也变得更加复杂&#xff0c;由于参数规模庞大&#xff0c;在工业应用中并不…

QT数据库SQLite:QsqlTableModel使用总结

数据库连接、数据模型与界面组件所涉及的类之间的关系如下所示&#xff1a; 数据库类 QSqlDatabase 类用于建立与数据库的连接&#xff0c;QSqlDatabase 对象就表示这种连接。QSqlDatabase 类的功能主要分为三大部分&#xff1a; 1、创建数据库连接&#xff0c;即创建 QSqlDat…

川崎机器人维修|校原点方法详解

川崎机器人校原点方法的详细步骤及其原理阐述如下&#xff1a; 需要手动将机器人的六个轴精确地移动到0刻度位置。这一步骤至关重要&#xff0c;因为它涉及到机器人后续运动的基准设定。具体操作时&#xff0c;我们需在关节坐标系的指引下&#xff0c;按照6-5-4-1-2-3的顺序&a…

19. Three.js案例-创建一个带有纹理映射的旋转平面

19. Three.js案例-创建一个带有纹理映射的旋转平面 实现效果 知识点 WebGLRenderer (WebGL渲染器) WebGLRenderer 是 Three.js 中用于渲染场景的主要类。它利用 WebGL 技术在浏览器中绘制 3D 图形。 构造器 new THREE.WebGLRenderer(parameters)参数类型描述parametersobj…