DataWorks の Redshift ノードを使用すると、Redshift タスクを開発し、定期的なスケジューリングを行い、他のタスクと統合できます。このトピックでは、Redshift ノードを使用してタスクを開発する方法について説明します。
背景情報
Amazon Redshift Serverless を使用すると、プロビジョニングされたデータウェアハウスを設定することなく、データにアクセスして分析できます。詳細については、「Amazon Redshift」をご参照ください。
前提条件
-
ビジネスフローが作成されている必要があります。
Data Studio では、ビジネスフローに基づいてエンジン固有の開発操作を実行します。ノードを作成する前に、まずビジネスフローを作成してください。詳細については、「ビジネスフローの作成」をご参照ください。
-
Redshift データソースが作成済みであること。
Redshift データベース内のデータにアクセスするには、まず、DataWorks に Redshift データソースとして追加する必要があります。データソースを作成するには、「データソース管理」をご参照ください。DataWorks で Redshift データソースを使用する方法の詳細については、「Amazon Redshift データソース」をご参照ください。
説明Redshift ノードは、JDBC 接続文字列で作成された Redshift データソースのみをサポートします。
-
データソースとリソースグループ間のネットワーク接続が確立済みであること。
使用するリソースグループに目的のデータソースが接続されていることを確認する必要があります。 ネットワーク接続の設定方法の詳細については、「リソースグループとデータソース間のネットワーク接続の確立」をご参照ください。
-
(オプション。RAM ユーザーの場合は必須) タスク開発に使用する RAM ユーザーがターゲットワークスペースに追加され、[開発者] または [ストレージ管理者] ロール (広範な権限を付与するため、慎重に割り当ててください) のいずれかが割り当てられている必要があります。メンバーの追加と権限の付与の詳細については、「ワークスペースへのメンバーの追加」をご参照ください。
制限事項
サポートされているリージョン:China (Hangzhou)、China (Shanghai)、China (Beijing)、、China (Shenzhen)、China (Chengdu)、China (Hong Kong)、Japan (Tokyo)、Singapore、Malaysia (Kuala Lumpur)、Germany (Frankfurt)、US (Silicon Valley)、および US (Virginia)。
ステップ 1:Redshift ノードの作成
DataStudioページに移動します。
DataWorks コンソールにログインします。 左側のナビゲーションウィンドウで、 を選択します。 表示されるページで、ドロップダウンリストから目的のワークスペースを選択し、[DataStudioに移動] をクリックします。
-
対象のワークフローを右クリックし、 を選択します。
-
ノードの作成 ダイアログボックスで、ノードの 名前 を入力し、確認 をクリックします。ノードが作成されたら、そのノード内でタスクを開発および設定できます。
ステップ 2:Redshift タスクの開発
(オプション) Redshift データソースの選択
ワークスペースに複数の Redshift データソースが作成されている場合は、Redshift ノードのエディターページで適切なデータソースを選択する必要があります。Redshift データソースが 1 つしか作成されていない場合は、デフォルトで開発に使用されます。
Redshift ノードは、JDBC 接続文字列で作成された Redshift データソースのみをサポートします。
SQL コードの開発:簡単な例
Redshift ノードのコードエディターで、実行するタスクのコードを記述します。以下にコードの例を示します。
SELECT * FROM usertablename;
SQL コードの開発:スケジューリングパラメーターの使用
DataWorks が提供する スケジューリングパラメータ を使用すると、定期的なスケジューリングシナリオでコードに動的なパラメーターを入力できます。ノードタスクのコード内で ${変数名} 形式を使用して変数を定義し、ノード編集ページの右側のナビゲーションペインにある [プロパティ] > スケジューリングパラメータ セクションで変数に値を割り当てることができます。サポートされている形式と設定の詳細については、「スケジューリングパラメーターでサポートされている形式」および「スケジューリングパラメーターの設定と使用」をご参照ください。
以下にコードの例を示します。
SELECT '${var}'; -- スケジューリングパラメーターと併用できます。
ステップ 3: タスクスケジューリングの設定
ノードタスクを定期的に実行するには、ノード編集ページの右側にある [スケジューリング設定] をクリックし、必要に応じてスケジューリング設定を構成します。詳細については、「タスクスケジューリングプロパティの概要」をご参照ください。
ノードを送信する前に、ノードの [再実行プロパティ] と [依存する先祖ノード] を設定する必要があります。
ステップ 4: タスクコードのテスト
タスクが期待どおりに動作することを確認するために、必要に応じて次のテスト操作を実行します。
-
(オプション) リソースグループを選択し、カスタムパラメーター値を割り当てます。
-
ツールバーの
アイコンをクリックします。[パラメーター] ダイアログボックスで、テスト用のスケジュールリソースグループを選択します。 -
タスクコードでスケジューリングパラメーター変数を使用している場合は、ここでテスト用の値を割り当てます。パラメーター割り当てロジックの詳細については、「タスクデバッグプロセス」をご参照ください。
-
-
タスクコードを保存して実行します。
ツールバーの
アイコンをクリックしてタスクコードを保存します。次に、
アイコンをクリックしてタスクを実行します。 -
(オプション) スモークテストを実行します。
開発環境でスモークテストを実行し、スケジュールされたタスクが期待どおりに実行されることを確認するには、ノード送信中または送信後にスモークテストを実行します。詳細については、「スモークテストの実行」をご参照ください。
ステップ 5: タスクの送信とパブリッシュ
ノードタスクを設定したら、送信してパブリッシュします。パブリッシュされると、ノードはスケジューリング設定に基づいて定期的に実行されます。
-
ツールバーの
アイコンをクリックしてノードを保存します。 -
ツールバーの
アイコンをクリックしてノードタスクを送信します。[コミット] ダイアログボックスで、[変更内容] を入力します。必要に応じて、送信後にコードレビューを要求するかどうかを選択します。
説明-
ノードを送信する前に、ノードの [再実行プロパティ] と [依存する先祖ノード] を設定する必要があります。
-
コードレビューは、コード品質を確保し、レビューされていないコードが本番環境に直接パブリッシュされることによるエラーを防ぎます。コードレビューが有効になっている場合、送信されたノードコードは、パブリッシュする前にレビュー担当者の承認を受ける必要があります。詳細については、「コードレビュー」をご参照ください。
-
標準モードのワークスペースを使用している場合、タスクの送信に成功したら、ノード編集ページの右上隅にある [パブリッシュ] をクリックして、タスクを本番環境にデプロイします。詳細については、「タスクのパブリッシュ」をご参照ください。
次のステップ
タスク操作: タスクがコミットされ公開されると、ノードの設定に基づいて定期的に実行されます。ノード編集ページの右上隅にある 運用保守 をクリックしてオペレーションセンターに移動し、定期タスクのスケジューリングと実行ステータスを表示できます。詳細については、「定期タスクの管理」をご参照ください。