QdrantからZilliz Cloudへの移行
このトピックでは、Zilliz CloudがQdrantからの移行時にデータ型マッピング、ペーロロードフィールド変換、およびコレクション名付け規則をどのように処理するかについて説明します。
前提条件
QdrantからZilliz Cloudへの移行を開始する前に、以下の要件を満たしていることを確認してください:
Qdrantの要件
要件 | 詳細 |
|---|---|
ネットワークアクセス | ソースQdrantクラスターがパプリックインターネットからアクセス可能であること |
APIアクセス | アクセス権限を持つクラスターエンドポイントおよびAPIキー |
データ可用性 | ソースコレクションにはデータが含まれている必要があります。空のコレクションは移行できません。 |
Zilliz Cloudの要件
要件 | 詳細 |
|---|---|
ユーザーロール | 組織オーナーまたはプロジェクト管理者 |
クラスターキャパシティ | 十分なストレージおよびコンピュートリソース(必要CUサイズの見積もりにはCU計算機を使用してください) |
ネットワークアクセス | ネットワーク制限を使用している場合は、Zilliz Cloud IPを許可リストに追加してください |
データ型マッピング
Qdrantのデータ型がZilliz Cloudにどのようにマッピングされるかを理解することは、移行計画にとって極めて重要です:
Qdrantフィールドタイプ | Zilliz Cloudフィールドタイプ | 備考 |
|---|---|---|
プライマリキー | VARCHAR(プライマリキー) | 自動的にマッピングされます。自動IDを有効にして新しいIDを生成できます(元の値は破棄されます)。 |
密度ベクター | FLOAT_VECTOR | 次元数は正確に保持され、修正は必要ありません |
スパースベクター | SPARSE_FLOAT_VECTOR | サンプルデータが空でない場合にのみマッピングされます。 |
ペーロロード | JSON(動的フィールド) | デフォルトでは動的スキーマとしてマッピングされます。固定フィールドに変換できます。 詳細については、動的フィールドを参照してください。 |
ペーロロードフィールド変換
Zilliz Cloudはペーロロードスキーマを検出するために100行をサンプリングします。必要に応じて手動で追加フィールドを追加できます。
Qdrantペーロロードは、最大限の柔軟性を確保するためにZilliz Cloudの動的スキーマに最初はマッピングされます。オプションでペーロロードフィールドを固定フィールドに変換して、以下を得ることができます:
-
より強い検証のための強制データ型
-
より良いクエリパフォーマンスのための最適化されたインデックス
-
一貫したデータ管理のための構造化スキーマ
ペーロロードを固定フィールドに変換する場合:
Qdrantペーロロード型 | Zilliz固定フィールド型 | 備考 |
|---|---|---|
整数 | INT64 | 直接型変換 |
浮動小数点 | DOUBLE | すべての浮動小数点数がDOUBLEになります |
ブール | BOOL | 直接マッピング |
キーワード | VARCHAR | 最大65,535バイト対応 |
地理情報 | JSON | JSON構造として保持されます。固定フィールドに変換できません |
日時 | VARCHAR | 最大65,535バイト対応 |
UUID | VARCHAR | 最大65,535バイト対応 |
配列型サポート
配列型は既存のペーロロードデータでは検出されず、動的フィールドからの変換はできません。ただし、移行構成中に手動で新しいフィールドとして追加できる場合がほとんどです:
Qdrant配列型 | Zilliz Cloud配列型 | 手動追加可能 |
|---|---|---|
配列<Int64> | ARRAY<INT64> | ✅ 新しいフィールドとして追加可能 |
配列<FLOAT> | ARRAY<DOUBLE> | ✅ 新しいフィールドとして追加可能 |
配列<BOOL> | ARRAY<BOOL> | ✅ 新しいフィールドとして追加可能 |
配列<VARCHAR> | ARRAY<VARCHAR> | ✅ 新しいフィールドとして追加可能 |
配列<Geo> | サポートされていません | ❌ 利用不可 |
配列<Datetime> | ARRAY<VARCHAR> | ✅ 新しいフィールドとして追加可能 |
配列<UUID> | ARRAY<VARCHAR> | ✅ 新しいフィールドとして追加可能 |
固定フィールドに変換されたペーロロードフィールドについては、追加の属性を構成できます:
-
NULL可能: フィールドがNULL値を受け入れるかどうかを決定します。この機能はデフォルトで有効です。詳細については、NULL属性を参照してください。
-
デフォルト値: データが欠落している場合のフォールバック値を設定します。詳細については、デフォルト値を参照してください。
-
パーティションキー: オプションでINT64またはVARCHARフィールドをパーティションキーとして指定できます。各コレクションは1つのパーティションキーのみをサポートし、選択されたフィールドはNULL不可でなければならないことに注意してください。詳細については、パーティションキーを使用を参照してください。
Qdrant固有の処理ルール
コレクション名付けルール
Qdrantコレクション名は、以下の考慮事項でZilliz Cloudに転送されます:
シナリオ | 影響 | 解決策 |
|---|---|---|
命名競合 | データベースに同じ名前のコレクションが既に存在する場合、移行ジョブを送信できません | 既存のコレクションを削除、異なるターゲットデータベースを選択、または移行構成中に名前を変更してください |
特殊文字 | コレクション名はQdrantからそのまま保持されます | コレクション名がZilliz Cloudの命名規則に準拠していることを確認してください |