グローバル変数を使用すると、オンラインパイプラインおよびDataWorksオフラインスケジューリングパイプラインでの繰り返しパラメーター設定の作業負荷を軽減できます。 オンラインパイプラインの場合、グローバル変数により複数のコンポーネントが同じパラメータを共有できます。 DataWorksオフラインスケジューリングでは、グローバル変数を使用して時限スケジューリングパラメーターを置き換え、パイプラインの柔軟性と効率を高めます。
How to use
グローバル変数を設定します。
作成したパイプラインを入力し、キャンバスの空白の領域をクリックします。 次に、インターフェイスの右側にある [グローバル変数の追加] をクリックします。
${variableName}
と入力します。ここでは、変数を参照するために変数が必要です。
例1: オンラインパイプラインでのグローバル変数の使用
この例では、グローバル変数para1
を使用して列名status
をifHealth
に変更し、SQLスクリプトの変数を参照します。
この例では、プリセットテンプレート "Heart Disease Prediction" に基づいてパイプラインを作成します。 次に、最初の2つのノードのみを保持し、他のノードを削除します。
キャンバスの空白の領域をクリックし、ページの右側に新しいグローバル変数を作成します。
変数名を
para1
に、変数値をifHealth
に設定します。グローバル変数を使用します。
変数
${para1}
を参照して、SQLコンポーネントを変更します。パイプラインを実行します。
実行が完了したら、SQLコンポーネントを右クリックし、[データの表示]> [SQLスクリプト出力ポート] を選択します。 列名
status
がifHealth
に変更されていることがわかります。
例2 DataWorksオフラインスケジューリングパイプラインでのグローバル変数の使用
この例では、グローバル変数gDate
を使用して時限スケジューリングパイプラインを日付に関連付け、DataWorksでスケジューリング用に同じ名前のスケジューリングパラメーターを設定します。
テストデータテーブルを作成します。
この例では、MaxComputeコンソールにdwtestという名前のテーブルを作成します (以下の表を参照) 。 詳細については、「SQLリファレンス」をご参照ください。
パイプラインを作成し、グローバル変数を設定します。
キャンバスの空白の領域をクリックし、ページの右側に新しいグローバル変数
gDate
を作成します。パイプラインコンポーネントを設定します。
Read Table: Table Nameをdwtestに設定します。
SQLスクリプト: SQLスクリプトのグローバル変数
gDate
を参照します。select * from ${t1} where ds=${gDate}
パイプラインを実行します。
実行が完了したら、[SQLスクリプト] コンポーネントを右クリックし、[データの表示]> [SQLスクリプトの出力ポート] を選択します。 グローバル変数gDateに対応するデータが表示されます。
キャンバスの左上隅にある [定期的スケジューリング] をクリックし、[スケジューリングノードの作成] をクリックしてDataWorksに移動します。 [ノードの作成] ダイアログボックスで名前を入力し、[確認] をクリックします。
[PAIデザイナーの実験] を選択し、画面右側の [プロパティ] をクリックします。 詳細については、「タスクスケジューリングの設定」をご参照ください。
この例では、次のパラメーターを設定します。残りはデフォルトのままです。
Scheduling Parameter:
gDate
という同じ名前で、値が$bizdate
の新しいスケジューリングパラメーターを追加します。スケジュール: [再実行] を [実行ステータスに関係なく許可] に設定します。
依存関係: [ルートノードの追加] を選択します。
ツールバーのおよびアイコンをクリックして、ノードを保存および送信します。
ページ上部の [オペレーションセンター] をクリックして、機械学習タスクの実行ステータスと操作ログを表示します。
データバックフィルやパイプライントライアル実行などの操作を直接実行することもできます。「自動トリガータスクの表示と管理」をご参照ください。