跳到主要内容

从 Qdrant 迁移至 Zilliz Cloud

本文档介绍从 Qdrant 迁移时,Zilliz Cloud 如何处理数据类型映射、Payload 字段转换及 Collection 命名规则。

开始前​

开始离线迁移前需满足:

Qdrant 侧要求​

要求项详细说明
网络连通性源 Qdrant 集群必须可通过公网访问
API 访问权限需提供 Qdrant Endpoint 及具备访问权限的 API 密钥
数据可用性源 Collection 必须包含数据,空 Collection 法迁移

Zilliz Cloud 侧要求​

要求项详细说明
用户权限需具备组织管理员或项目管理员角色
目标集群容量需预留足够 CU 容纳源数据(使用 CU 计算器预估容量)
网络连通性如果有网络限制,请确保已将 Zilliz Cloud IP 加入白名单

数据类型映射​

下表总结了 Qdrant 字段类型如何映射到 Zilliz Cloud 字段类型,并对各类型做了详细说明。

Qdrant 字段类型Zilliz Cloud 字段类型描述
主键主键Qdrant 中的主键会自动映射为 Zilliz Cloud 中的主键。
在数据迁移时,您可以选择启用 Auto ID 功能;但请注意,启用后源 Collection 中的原始主键值将会被舍弃。
稠密向量FLOAT_VECTOR稠密向量字段会直接转换为 FLOAT_VECTOR,无需进行任何修改。
稀疏向量SPARSE_FLOAT_VECTOR如果样本行中的稀疏向量字段不为空,则默认进行字段映射;否则,在 Schema 映射中将不会选择稀疏向量字段。
PayloadDynamic field默认情况下,Qdrant 的 Payload 会映射为 Zilliz Cloud 中的 Dynamic Field。有关详细信息,请参阅 Dynamic Field。
在迁移数据时,如果您希望对某些动态字段使用固定数据类型并优化索引配置,建议将动态字段转换为固定字段。

Payload 字段转换规则​

说明

Zilliz Cloud 采样 100 行数据检测 Payload 数据结构,必要时可手动添加字段。

Qdrant Payload 默认映射为 Dynamic Field 以实现最大灵活性,转换为固定字段可带来:

  • 强数据类型校验:强制字段类型约束

  • 优化查询性能:建立专用索引

  • 结构化数据管理:统一数据规范

Payload 字段类型Zilliz Cloud 固定字段类型描述
IntegerINT64如果 Payload 中的字段类型为 Integer,当转换为固定字段后,该字段将变为 INT64 类型。
FloatDOUBLE如果 Payload 中的字段类型为 Float,当转换为固定字段后,该字段将变为 DOUBLE 类型。
BoolBOOL如果 Payload 中的字段类型为 Bool,当转换为固定字段后,该字段将变为 BOOL 类型。
KeywordVARCHAR如果 Payload 中的字段类型为 Keyword,当转换为固定字段后,该字段将变为 VARCHAR 类型。
注意:该字段的最大长度固定为 65,535 字节且不可修改,容量计算以实际字段长度为准。
GeoJSON如果 Payload 中的字段类型为 Geo,当转换为固定字段后,该字段将变为 JSON 类型。
DatetimeVARCHAR如果 Payload 中的字段类型为 Datetime,当转换为固定字段后,该字段将变为 VARCHAR 类型。
注意:该字段的最大长度固定为 65,535 字节且不可修改,容量计算以实际字段长度为准。
UUIDVARCHAR如果 Payload 中的字段类型为 UUID,当转换为固定字段后,该字段将变为 VARCHAR 类型。
注意:该字段的最大长度固定为 65,535 字节且不可修改,容量计算以实际字段长度为准。

Array 类型支持​

Qdrant Array 类型Zilliz Cloud Array 类型是否支持手动添加
Array<Integer>ARRAY<INT64>支持添加为新的固定字段(不能从动态字段转换)。
Array<Float>ARRAY<DOUBLE>支持添加为新的固定字段(不能从动态字段转换)。
Array<Bool>ARRAY<BOOL>支持添加为新的固定字段(不能从动态字段转换)。
Array<Keyword>ARRAY<VARCHAR>支持添加为新的固定字段(不能从动态字段转换)。
Array<Geo>不支持Array 中的元素类型为 Geo 时暂不支持映射。
Array<Datetime>ARRAY<VARCHAR>支持添加为新的固定字段(不能从动态字段转换)。
Array<UUID>ARRAY<VARCHAR>支持添加为新的固定字段(不能从动态字段转换)。

转换为固定字段后,可配置以下属性:

  • Nullable:决定字段是否接受空值(默认启用),详见 Nullable 属性。

  • 默认值:设置数据缺失时的回退值,详见默认值。

  • Partition Key:可将 INT64/VARCHAR 字段指定为 Partition Key(注意:每个 Collection 支持一个 Partition Key,且该字段不可为空),详见 使用 Partition Key。

Qdrant 特殊处理规则​

Collection 命名规则​

Qdrant Collection 名称将按以下规则迁移至 Zilliz Cloud:

场景影响解决方案
名称冲突目标 Database 存在同名 Collection 时无法提交迁移任务删除现有 Collection / 选择其他目标 Database / 迁移配置时重命名 Collection
特殊字符名称按 Qdrant 原始格式保留请确保名称符合 Zilliz Cloud 命名规范