移行されたマッピングへの別のオブジェクトパスの使用
マッピングを移行した後に、別のオブジェクトパスを使用して、新しい環境からマッピングを実行できます。
このシナリオでは、マッピングを移行する前に、オブジェクトメタデータまたはランタイム属性を変更して、移行された環境にオブジェクトパスを反映させることができます。新しい環境でマッピングを編集または更新する必要はありません。
原則として、詳細プロパティまたはオブジェクトプロパティでスキーマとテーブルを指定すると、データ統合は次の優先順位で属性を使用します。
- 1ランタイムの詳細属性。マッピングのソース、ターゲット、またはルックアップトランスフォーメーションのスキーマ名やテーブル名などの詳細プロパティ。
- 2オブジェクトメタデータ。マッピングのソース、ターゲット、またはルックアップトランスフォーメーションで選択したオブジェクトタイプ。
移行オプション
移行を行うときは、次のオプションのいずれかを選択して、オブジェクトパスを更新できます。
オプション1: 接続プロパティを更新して、新しいオブジェクトを参照する
マッピングを組織2にインポートすると、[接続の確認]セクションで既存の接続を変更して、組織2の指定されたスキーマおよびテーブルにアクセス可能な接続にマッピングできます。
オプション2: 詳細プロパティからプロパティをオーバーライドする
移行の前に、組織1のマッピングの詳細プロパティで、組織2のオブジェクトに必要なスキーマとテーブル名を指定します。
移行後にマッピングを実行すると、Secure Agentは設定された詳細パラメータを使用して、指定されたオブジェクトを組織1からインポートされたマッピングでオーバーライドします。
オプション3: マッピングのプロパティをパラメータ化する
移行前に、スキーマやテーブル名などの詳細属性をパラメータ化するという選択ができます。マッピングでは、入力パラメータ、入出力パラメータ、およびパラメータファイルを設定できます。
マッピングを移行した後は、マッピングを編集または更新しないでください。入出力パラメータを使用した場合は、パラメータファイルを使用してスキーマとテーブルの属性を変更し、タスクの実行時に変更が適用されるようにすることができます。
- マッピング内のオブジェクトではなく、詳細プロパティのみをパラメータ化する
- 詳細プロパティのみをパラメータ化し、実行時にそれらのプロパティを使用する場合は、マッピングのオブジェクトプロパティでプレースホルダオブジェクトを選択してから、詳細プロパティからこのプレースホルダオブジェクトへのオーバーライドを指定します。プレースホルダオブジェクトに、オーバーライドとして指定した対応するテーブルと同じメタデータが含まれていることを確認してください。マッピングを実行すると、詳細プロパティで指定した値でプレースホルダオブジェクトがオーバーライドされます。
- オブジェクトと詳細プロパティをパラメータ化する
- Amazon Redshiftオブジェクトタイプと詳細フィールドをパラメータ化したままにする場合は、パラメータの追加時に入力パラメータウィンドウで[実行時にパラメータのオーバーライドを許可]オプションが選択されていない状態で、必要なオブジェクトをタスクレベルで選択します。タスクを実行すると、詳細プロパティで指定した値が優先されます。
パラメータ化ルール
オブジェクトと詳細プロパティをパラメータ化する場合は、次のルールを考慮してください。
- •パラメータ化は、[ターゲットの作成]オプションを使用するマッピングには適用されません。
- •移行の使用例では、入力パラメータと入出力パラメータが詳細モードのマッピングに適用されます。
- •マッピングに複数のパイプラインが設定されている場合は、Amazon Redshiftオブジェクトをパラメータ化しないでください。移行する前に、マッピングの作成時にプレースホルダオブジェクトを選択する必要があります。
マッピングの移行のルールとガイドライン
移行されたマッピングに同じオブジェクトパスまたは異なるオブジェクトパスを使用する場合は、次のルールとガイドラインを考慮してください。
- •次の表に、トランスフォーメーション、オブジェクトタイプ、および新しい環境に移行したときに保持されるマッピングの詳細プロパティのフィールドを示します。
トランスフォーメーション | オブジェクトタイプ | 詳細フィールド |
---|
ソース | 単一オブジェクト、複数のオブジェクト | スキーマとテーブル名 |
ルックアップ | 単一オブジェクト 注: 未接続または接続済みの、キャッシュされたオブジェクトおよびキャッシュされていないオブジェクトに適用されます。 |
ターゲット | 単一オブジェクト |
- •マッピングを組織2に移行する前に、組織1の接続1を組織2にマッピングします。これにより、組織1の詳細プロパティで設定されたスキーマとテーブル名にアクセスできるようになります。
- •マッピングを組織2に移行した後は、マッピングを編集しないでください。
- • マッピングでスキーマとテーブル名をオーバーライドすると、組織2の接続で使用されているスキーマが無効な場合、エラーが発生してマッピングは失敗します。マッピングが失敗して、次のエラーが表示されます:
An unexpected exception occured while fetching metadata:[The following schema is not found - invalidschema]
- •実行時にデータオブジェクトスキーマを動的に更新することはできません。スキーマ変更処理は適用されないため、ソース、ターゲット、またはルックアップトランスフォーメーションで選択されたテーブルと対応する詳細フィールドのオーバーライドに対して同じメタデータを使用する必要があります。
- •複数のソースがある場合は、次のガイドラインを検討してください。
- - マッピングに複数のソースが含まれている場合は、次の例のように、ソースオブジェクトが同じスキーマを持つ場合にのみ、詳細プロパティのスキーマをオーバーライドできます。
オブジェクト1: <schema1.object1>
オブジェクト2: <schema1.object2>
オブジェクト1のスキーマが<schema1.object1>で、オブジェクト2が<schema2.object2>などのようにスキーマが異なる場合、移行は機能しません。
- - マッピングに複数のオブジェクトが含まれている場合は、詳細プロパティからテーブルをオーバーライドしないでください。