腾讯云向量数据库(Tencent Cloud VectorDB)是一种高性能、分布式、可扩展的向量数据库解决方案。在 VectorDB 中,数据库实例是最高层级的容器,用于存储多个 Database,而一个 Database 包含多个集合。Collection 与 CollectionView 是具有相同数据结构和语义的 Document 容器。其逻辑结构,如下图所示。
基本概念 | 含义 | 相关操作 |
实例(Instance) | 用户购买向量数据库服务的基本单位。 | 新建实例,请参见 购买数据库实例。 查看实例信息与销毁操作,请参见 管理实例。 |
Base Database | 可直接操作向量数据的数据库,包含一系列相关 Collection 的集合。 用户可以将向量数据上传至 Base 类 Database 中进行存储和管理。 | |
AI Database | | |
Collection | Base 类数据库文档组的集合,相当于关系型数据库中的表。一个 Database 中可以包含多个 Collection。 | 创建、删除或查询 Collection ,请参见 管理集合。 创建集合时,支持指定索引类型、相似度计算方法,以及分片数、副本数。 |
CollectionView | AI 类数据库文档组的集合视图,由多个 DocumentSet 组成。每个 DocumentSet 存储一组数据,多个 DocumentSet 构成一个CollectionView。 | 创建、删除、查询 CollectionView,请参见 管理集合视图。 创建集合视图时,需要配置文件预处理相关参数,无需指定副本、分片数,系统将依据文件大小自动调整资源。 |
Document | Base 类数据库中一个 Collection 中可以包含多个 Document。每个 Document 由多个字段(Field)组成形成一条向量数据。每个 Field 以键值对(key:value)的形式存储,相当于关系型数据库中的数据字段。 说明: 向量数据库字段(Field)具备 Schemaless 特性。即不需要预先定义模式,便可以将任意数量和类型的字段添加到Document 中。使用时,仅需关注需要构建索引的字段。 | 直接写入向量数据,可对向量数据进行更新。 写入原始文本,系统自动进行 Embedding 向量化,存储原始文本与转化后的向量数据,可更新文本信息与向量数据。 |
DocumentSet | 相对 Document,DocumentSet 是 AI 类数据库中存储在 CollectionView 中的非结构化数据,是文件被拆分成多个 Document 的集合。每个DocumentSet 存储一组数据,对应一个文件,是 CollectionView下存储文件的最小单元。 | 上传文件之后,将根据创建 CollectionView 配置的预处理方式自动对文件进行 Embedding、Split 等。 文件上传之后,不支持修改文件内容对应的向量数据,仅能修改文件的 Meta 信息。 |
Index
| 一种用于加速检索的数据结构,分为主键检索、向量索引和 Filter 索引。 主键索引(Primary Key Index):是一种用于快速查找特定行的数据库索引类型。在主键索引中,每个行都有一个唯一的标识符,称为主键。主键索引使用这些主键来快速查找特定行,而不需要扫描整个表。腾讯云向量数据库默认将 Document id 或 DocumentSet ID 作为主键来构建主键索引。 向量索引(Vector Index):是一种用于快速查找相似向量的数据库索引类型。在向量索引中,每个向量都被索引,并且可以通过计算它们之间的相似度来快速查找最相似的向量。向量索引通常用于处理大规模的高维数据,当前所支持的相似度算法,请参见 相似度计算。 Filter 索引(Filter Index):是建立在标量字段的索引。标量字段被建立 Filter 索引之后,向量检索时,将依据 Filter 指定的标量字段的条件表达式来查找相似向量,请参见 Filter 条件表达式。 | 在创建 Collection 时,需指定索引类型,设置索引参数。具体操作,请参见 创建集合。 在创建 CollectionView 时,仅可对文件的元数据字段设置 Filter 索引;文件上传之后,系统自动分配文件 ID,设置 DocumentSet ID 为主键索引,而文件内容自动向量化后,也会自动创建向量索引。 支持对已存在的 Collection 重建索引,清除无用的索引数据,修复损坏的索引数据,优化索引结构,改善性能。具体操作,请参见 重建索引。 当前不支持对已存在 CollectionView 重建索引。 支持在 Collection 写入向量数据时,配置是否需要更新索引,以便对新增或者修改的数据创建向量索引。具体操作,请参见 写入数据。 |
属性(Attribute) | 标识 Collection 或 CollectionView 的其他属性,基本属性如下所示,可以根据具体需求进行自定义和扩展,以适应不同的业务场景和数据类型。 Name:集合名称。 Description:集合的备注信息,用于描述集合的业务属性或其他信息。 Alias:集合别名。别名可以是一个简短的字符串,方便标识和访问对应的集合。当使用别名访问时,用户不感知真实集合名的变化,适用于数据迁移到新集合后的一键切换场景。 | 在创建 Collection 时,需指定集合名称,设置描述信息,自定义扩展所需的字段。具体信息,请参见 创建集合。 在创建 CollectionView 时,需指定集合视图名称,设置描述信息,自定义扩展文件元数据字段。具体信息,请参见创建集合视图。 支持对 Collection 已写入的向量数据进行更新,并支持新增字段。具体操作,请参见更新数据。 支持对 CollectionView 已写入的文件的元数据字段进行更新与新增,不支持修改文件内容对应的向量数据。具体操作,请参见更新数据。 管理 Collection 与 CollectionView 的别名,请参见 管理别名。 |