Schema 概述
Schema 定义了 Collection 的数据结构。在创建 Collection 之前,你需要设计好它的 Schema。本页将帮助你理解 Collection Schema,并自行设计一个示例 Schema。
主键字段与 AutoID
主键字段唯一标识一个实体。本页介绍如何添加两种不同数据类型的主键字段,以及如何启用 Milvus 自动分配主键字段值。
稠密向量
稠密向量是广泛应用于机器学习和数据分析的数字数据表示。它们由包含实数的数组组成,其中大部分或所有元素都不为零。与稀疏向量相比,稠密向量在同一维度上包含更多信息,因为每个维度都持有有意义的值。这种表示方法能有效捕捉复杂的模式和关系,使数据在高维空间中更容易分析和处理。稠密向量通常有固定的维数,从几十到几百甚至上千不等,具体取决于具体的应用和要求。
二进制向量
二进制向量是一种特殊的数据表示形式,它将传统的高维浮点向量转换成只包含 0 和 1 的二进制向量。这种转换不仅压缩了向量的大小,还降低了存储和计算成本,同时保留了语义信息。当对非关键特征的精度要求不高时,二进制向量可以有效保持原始浮点向量的大部分完整性和实用性。
稀疏向量
稀疏向量是信息检索和自然语言处理中捕捉表层术语匹配的重要方法。虽然稠密向量在语义理解方面表现出色,但稀疏向量往往能提供更可预测的匹配结果,尤其是在搜索特殊术语或文本标识符时。
字符串字段
在 Milvus 中,VARCHAR 是用于存储字符串数据的数据类型。定义 VARCHAR 字段时,有两个参数是必须的:
数字字段
数字字段是存储数值的标量字段。这些数值可以是整数(整数)或十进制数(浮点数)。它们通常用于表示数量、测量值或任何需要进行数学处理的数据。
JSON 字段
JSON 字段是一种标量字段,与 Embedding 一起以键值对的形式存储附加信息。下面是一个以 JSON 格式存储数据的示例:
数组字段
ARRAY 字段存储同一数据类型元素的有序 Collection。下面举例说明 ARRAY 字段如何存储数据:
Dynamic Field
Collection 的 Schema 中定义的所有字段都必须包含在要插入的实体中。如果希望某些字段是可选的,可以考虑启用动态字段。本主题将介绍如何启用和使用动态字段。
可空和默认
Milvus 允许你为标量字段(主键字段除外)设置可空属性和默认值。对于标记为 nullable=True 的字段,你可以在插入数据时跳过该字段,或直接将其设置为空值,系统会将其视为空值而不会导致错误。当字段有默认值时,如果在插入过程中没有为该字段指定数据,系统将自动应用该值。
Analyzer
5 个项目
更改 Collection 字段
您可以更改 Collection 字段的属性,以更改列约束或执行更严格的数据完整性规则。