すべてのプロダクト
Search
ドキュメントセンター

Platform For AI:グローバル変数

最終更新日:Jun 22, 2026

パイプラインのグローバル変数を使用すると、パラメーターの繰り返し設定を減らすことができます。グローバル変数は、オンラインパイプラインと DataWorks のオフラインスケジューリングパイプラインの両方で一般的に使用されます。オンラインパイプラインでは、複数のコンポーネントでパラメーターを共有できます。DataWorks のオフラインスケジューリングでは、スケジューリングパラメーターを動的に上書きするために使用され、パイプラインの柔軟性と効率が向上します。

操作手順

  1. グローバル変数を構成します。

    既存のパイプラインを開き、キャンバスの空白部分をクリックして、右側のパネルでグローバル変数を作成します。

    グローバル変数を参照するには、${variable_name} というフォーマットを使用します。変数名は 1~20 文字で、先頭は英字である必要があります。また、英字、アンダースコア、数字のみを使用できます。オフラインスケジューリングでグローバル変数を使用する場合、DataWorks で同じ名前のスケジューリングパラメーターを定義する必要があります。PAI Designer で構成した値は、オンラインでの実験実行にのみ適用されます。

  2. グローバル変数を使用するパラメーターフィールドに、${variable_name} と入力します。

例 1:オンラインパイプライン

この例では、グローバル変数 para1 を設定して、テーブルの列 status の名前を ifHealth に変更し、SQL スクリプトで参照する方法を説明します。

  1. パイプラインを作成します

    パイプラインを作成した後、最初の 2 つのノードのみを残し、他のノードは削除します。

  2. キャンバスの空白部分をクリックし、右側のパネルでグローバル変数を作成します。

    グローバル変数名を para1 に、その値を ifHealth に設定します。

  3. グローバル変数を使用します。

    SQL スクリプト コンポーネントを変更し、${para1} を使用して変数を参照します。

    SQL Script-1 コンポーネントの SQL エディターで、SELECT 文の最後に ${para1} を出力列のエイリアスとして使用します。FROM 句では、${t1} を使用して Read Table-1 コンポーネントからの入力ソースを参照します。また、[CREATE TABLE 文を自動的に追加] チェックボックスをオンにします。このオプションを選択した場合、最後の文は SELECT 文である必要があります。

  4. パイプラインを実行します。

    実行が完了したら、SQL スクリプト コンポーネントを右クリックし、[データの表示] > [SQL スクリプトの出力] を選択します。列名 statusifHealth に変更されていることを確認します。

例 2:DataWorks のオフラインスケジューリング

この例では、グローバル変数 gDate を使用して、パイプライン内の特定の日付のデータをフィルター処理する方法を説明します。その後、DataWorks で対応するスケジューリングパラメーターを構成し、パイプラインを定期実行ジョブとして実行します。

  1. テストデータテーブルを作成します。

    この例では、MaxCompute コンソールdwtest という名前のテーブルを作成します。詳細については、「SQL リファレンス」をご参照ください。

    dwtest テーブルには、t1 (数値、例:1.0、0.0、1.2、0.1)、t2 (数値、例:1.1、1.0、0.0、0.1)、label (文字列、例:A、B、C、D、E、F)、ds (日付パーティション、例:20190519、20190520) の 4 つの列があります。このテーブルには 10 行のテストデータが含まれています。

  2. パイプラインを作成し、グローバル変数を構成します。

    1. キャンバスの空白部分をクリックし、右側のパネルで gDate という名前のグローバル変数を作成します。

      変数の値を 20190520 に設定します。

    2. パイプラインコンポーネントを構成します。

      image

      • テーブル読み込み[テーブル名]dwtest テーブルに設定します。

      • SQL スクリプト:クエリで gDate グローバル変数を使用します。

        select * from ${t1} where ds=${gDate}
  3. パイプラインを実行します。

    実行が完了したら、SQL スクリプト コンポーネントを右クリックし、[データの表示] > [SQL スクリプトの出力] を選択します。出力データは、gDate グローバル変数の値に基づいてフィルター処理されます。

    クエリ結果では、ds 列の値が 20190520 となり、gDate グローバル変数の値と一致します。これにより、グローバル変数が正常に渡されたことが確認できます。

  4. キャンバスの左上隅にある [定期スケジューリング] をクリックし、次に [スケジューリングノードの作成] をクリックします。DataWorks にリダイレクトされ、オフラインスケジューリングを構成します。[ノードの作成] ダイアログボックスで、ノード名を指定し、[確認] をクリックします。

  5. PAI Designer の実験を選択し、右側のパネルで [プロパティ] をクリックします。構成の詳細については、「ノードスケジューリングの構成」をご参照ください。

    この例では、次のパラメーターを構成し、その他はデフォルト設定のままにします:

    • スケジューリングパラメーターgDate という名前のスケジューリングパラメーターを追加し、その値を $bizdate に設定します。

    • スケジュール:再実行プロパティで、前の実行結果に関係なくノードを再実行できるように指定します。

    • 依存関係:上流依存関係をワークスペースのルートノードに設定します。

  6. ツールバーの 保存 アイコンと 提交 アイコンをクリックします。画面の指示に従ってノードを保存し、送信します。

  7. ページの上部にある [オペレーションセンター] をクリックして、タスクの実行ステータスと操作ログを表示します。

    データのバックフィルやトライアルパイプラインの実行も可能です。詳細については、「自動トリガータスクの管理」をご参照ください。

関連ドキュメント