メインコンテンツまでスキップ

Pinecone から Zilliz Cloud への移行

このトピックでは、Pinecone から移行する際に、Zilliz Cloud がデータ型マッピング、フィールド変換、Namespace の処理、コレクションの命名規則をどのように扱うかについて説明します。

インデックス設定と移行後の手順については、外部移行の基本 を参照してください。

事前準備​

Pinecone から Zilliz Cloud への移行を開始する前に、以下の要件を満たしていることを確認してください。

Pinecone の要件​

要件詳細
インデックスタイプPinecone Serverless インデックスからの移行のみをサポートします。
API アクセスアクセス権限を持つ Pinecone API キー
データの可用性Pinecone のソースインデックスにはデータが含まれている必要があります。空のインデックスは移行できません。
ベクトル次元次元は 1 より大きい必要があります。単一次元のベクトルは移行の失敗を引き起こします。

Zilliz Cloud の要件​

要件詳細
ユーザーロールOrganization Owner または Project Admin
クラスター容量十分なストレージとコンピューティングリソース(CU サイズを見積もるには CU 計算ツール を使用します)
ネットワークアクセスネットワーク制限を使用している場合は、許可リストに Zilliz Cloud の IP を追加します

データ型マッピング​

Pinecone のデータ型が Zilliz Cloud にどのようにマッピングされるかを理解することは、移行を計画するうえで重要です。

Pinecone のフィールド型Zilliz Cloud のフィールド型備考
プライマリキーVARCHAR(プライマリキー)自動的にマッピングされます。新しい ID を生成するには Auto ID を有効にします(元の値は破棄されます)。
密ベクトルFLOAT_VECTOR次元は正確に保持され、変更は不要です。
疎ベクトルSPARSE_FLOAT_VECTORサンプルデータ内で空でない場合にのみマッピングされます。
メタデータ動的フィールドデフォルトでは動的スキーマとしてマッピングされます。固定フィールドに変換できます。
詳細については、動的フィールド を参照してください。
Namespaceパーティションキー / パーティションパフォーマンス最適化のために推奨されます。
詳細については、Namespace の処理 を参照してください。

メタデータフィールドの変換​

Notes

Zilliz Cloud はメタデータスキーマを検出するために 100 行をサンプリングします。必要に応じて、追加のフィールドを手動で追加できます。

Pinecone のメタデータは、最大限の柔軟性を実現するために、最初は Zilliz Cloud の動的スキーマにマッピングされます。必要に応じて、メタデータフィールドを固定フィールドに変換することで、次のメリットを得られます。

  • より厳密な検証のためのデータ型の適用

  • より良いクエリパフォーマンスのためのインデックスの最適化

  • 一貫したデータ管理のための構造化されたスキーマ

メタデータを固定フィールドに変換する場合は、次のとおりです。

Pinecone のメタデータ型Zilliz の固定フィールド型備考
文字列VARCHAR最大 65,535 バイトをサポートします。
数値 (int/float)DOUBLEすべての数値型は DOUBLE になります。
ブール値BOOL直接マッピングされます。
文字列のリストARRAY<VARCHAR>ネストされた配列をサポートします。

固定フィールドに変換されたメタデータフィールドでは、次の追加属性を構成できます。

  • Nullable: フィールドが null 値を受け入れられるかどうかを決定します。この機能はデフォルトで有効になっています。詳細については、Nullable 属性 を参照してください。

  • Default Value: データが欠落している場合のフォールバック値を設定します。詳細については、デフォルト値 を参照してください。

Pinecone 固有の処理ルール​

Namespace の処理​

Pinecone の Namespace は、次の 2 つの戦略を使用して移行できます。

戦略実装パフォーマンスへの影響ユースケース
Namespace as Partition Key (推奨)Namespace がパーティションキーフィールドの値になります。検索パフォーマンスの自動最適化複数の Namespace を使用するほとんどのシナリオ
Namespace as Partition各 Namespace が個別のパーティションになります。手動でのパーティション管理が必要です。Namespace が少なく安定しているシンプルなシナリオ
Notes

Pinecone の default Namespace の処理:

  • As Partition: Zilliz Cloud では _default パーティションになります。

  • As Partition Key: 空の文字列 "" の値になります。

パーティションとパーティションキーの概念の詳細については、パーティションの管理 および パーティションキーの使用 を参照してください。

コレクションの命名規則​

Pinecone のインデックス名は、Zilliz Cloud との互換性のために自動的に処理されます。

Pinecone のインデックス名Zilliz Cloud のコレクション名適用されるルール
my-vector-indexmy_vector_indexZilliz Cloud のコレクション命名規則に準拠するため、ハイフン(-)をアンダースコア(_)に変換します。
product_searchproduct_search変更は不要です。

命名の競合: ターゲットデータベースに同じ名前のコレクションがすでに存在する場合は、次のいずれかを行う必要があります。

  • 既存のコレクションを削除します。または

  • 別のターゲットデータベースを選択します。または

  • 移行の構成時にターゲットコレクションの名前を変更します。