コンテキスト変数を使って実行時に異なる接続文字列を使用 - Cloud

Talend Cloud Pipeline Designerユーザーガイド

EnrichVersion
Cloud
EnrichProdName
Talend Cloud
EnrichPlatform
Talend Pipeline Designer
task
ジョブデザインと開発 > パイプラインのデザイン
デプロイメント > デプロイ中 > パイプラインの実行
データガバナンス > データのフィルタリング
データクオリティとプレパレーション > データのフィルタリング
データクオリティとプレパレーション > データセットの管理
管理と監視 > ログの監視
管理と監視 > 実行の監視

この シナリオでは、接続の資格情報をオーバーライドするために、したがって、実行時に本番準備データベースと本番データベースの間を切り替えるために、コンテキスト変数が追加されます。

始める前に

  • ソースデータを保存するシステムへの接続が作成されていること。ここではMySQL接続を使用します。

  • ソースデータを保管するデータセットが追加済みであること。

    ここでは、顧客の識別子、名前、住所、国、与信限度額、その他を含む連絡先データが入っているテーブルです。

  • また、出力ログを保管する対象の接続(ここではテストデータセット)も作成されていること。

手順

  1. [Pipelines] (パイプライン)ページで[ADD PIPELINE] (パイプラインの追加)をクリックします。新しいパイプラインが開きます。
  2. パイプラインに意味のある名前を付けます。

    例え

    Switch from a MySQL Pre-Prod to PROD table with context variables
  3. [ADD SOURCE] (ソースの追加)をクリックすると、ソースデータ(ここではMySQL contact table)を選択できるパネルが開きます。データのサンプルがプレビューパネルに表示されます。
  4. をクリックし、パイプラインにType converterプロセッサーを追加します。[Configuration] (設定)パネルが開きます。
  5. プロセッサーに意味のある名前(convert credit typeなど)を付けます。
  6. [Converters] (コンバーター)エリアで次の操作を行います。
    1. [Field path] (フィールドパス)エリアで.creditlimitを選択します。ユーザーの与信限度額に対応するレコードを変換するためです。
    2. [Output type] (出力タイプ)リストから[Double] (倍数)を選択します。これは、与信限度額の値をString型からDouble型に変換するためです。変換後に、これらの値に基づいて計算を行えるようになります。
  7. [Save] (保存)をクリックして設定を保存します。

    与信限度額に関するレコードがDouble型に変換されていることが確認できます。

  8. をクリックして、パイプラインにAggregateプロセッサーを追加します。[Configuration] (設定)パネルが開きます。
  9. プロセッサーに意味のある名前(calculate average credit limitなど)を付けます。
  10. [Operations] (操作)エリアで次の操作を行います。
    1. [Field path] (フィールドパス)エリアで.creditlimitを選択します。ユーザーの与信限度額に対応するレコードに計算操作を実行するためです。
    2. [Operation] (操作)リストから[Average] (平均)を選択します。この顧客リストの平均与信限度額を計算するためです。
  11. [Save] (保存)をクリックして設定を保存します。

    与信限度額に関するレコードがDouble型に変換されていることが確認できます。

  12. パイプラインの[ADD DESTINATION] (デスティネーションの追加)アイテムをクリックしてパネルを開くと、出力ログを保持する[Test dataset] (テストデータセット)を選択できます。
  13. (オプション)パイプラインをこの段階で実行すると、ログに以下が表示されます:
    • パイプラインは正常に実行され、52のレコードが読み込まれました。
    • このパイプラインにはコンテキスト変数が設定されませんでした。
  14. [MySQL contact table] (MySQL連絡先テーブル)ソースの[Connection] (接続)タブに戻り、変数を追加して割り当てます。
    1. JDBC URLパラメーターの横にあるアイコンをクリックし、[Add a variable] (変数の追加)ウィンドウを開きます。
    2. 変数に名前(PROD connection string dataなど)を付けます。
    3. 取得するデフォルトリソースを上書きする変数値(jdbc:mysql://myprodconnectionstring.us-east-1.rds.amazonaws.com:3306/mytableなど)を入力します。
    4. 必要であれば説明を入力し、[ADD] (追加)をクリックします。
    5. これで変数が作成されます。リダイレクト先の[Assign a variable]ウィンドウに全コンテキスト変数がリスト表示されます。ユーザーを選択して[Assign] (割り当て)をクリックします。
      変数とその値がMySQLデータセットのJDBC URLパラメーターに割り当てられます。つまり、本番MySQLテーブルをポイントするJDBC URLによって、以前に定義したJDBC URLが上書きされます。本番準備テーブルからデータが取得される代わりに、本番テーブルデータが取得されます。
    6. [Save] (保存)をクリックして設定を保存します。

      変数が割り当てられると、アイコンが表示されて、変数がパイプライン内に設定されたことを示します。

  15. Talend Cloud Pipeline Designerの上部のツールバーで、リストから実行プロファイルを選択します(詳細は実行プロファイルを参照してください)。
  16. 実行アイコンをクリックしてパイプラインを実行します。

タスクの結果

パイプラインは実行中となり、データは集計され、ソースと対象の接続文字列に割り当てたコンテキスト変数に対応します。
  • パイプライン実行ログでは、読み込まれたレコード数が増えていることが確認できます(1153)。
  • 実行時に本番テーブルからデータを取得するために使用されたコンテキスト変数値も確認できます。