DataWorks は、GBase 8a タスクを開発して定期的にスケジュールし、GBase 8a タスクを他のタイプのタスクと統合するために使用できる GBase 8a ノードを提供します。このトピックでは、GBase 8a ノードを使用してタスクを開発する方法について説明します。
背景情報
GBase 8a は、大量のデータの格納と高並列データの読み取りおよび書き込みをサポートするリレーショナルデータベース管理システム(RDBMS)です。 GBase 8a は、公共サービス、金融、電気通信、エネルギーなどの分野で一般的に使用されています。 GBase 8a は SQL 標準をサポートし、データパーティション、ロードバランシング、ディザスタリカバリとバックアップなど、さまざまなエンタープライズレベルの機能を提供します。詳細については、GBase 8a 公式 Web サイトをご覧ください。
前提条件
ワークフローが作成されます。
DataStudio では、さまざまなタイプのコンピューティングエンジンの開発操作がワークフローに基づいて実行されます。そのため、ノードを作成する前に、ワークフローを作成する必要があります。詳細については、「ワークフローの作成」をご参照ください。
GBase 8a データソースが追加されます。
データベース内のデータにアクセスするためにデータソースを使用する前に、GBase 8a データベースを GBase 8a データソースとして DataWorks に追加する必要があります。データソースを追加する方法については、「データソースの追加と管理」をご参照ください。 DataWorks で GBase 8a データソースを使用する方法については、「GBase 8a データソース」をご参照ください。
説明Java Database Connectivity(JDBC)接続文字列モードで DataWorks に追加された GBase 8a データソースのみに基づいて GBase 8a ノードを作成できます。
データソースとリソースグループの間にネットワーク接続が確立されます。
目的のデータソースが、使用するリソースグループに接続されていることを確認する必要があります。ネットワーク接続を構成する方法の詳細については、「リソースグループとデータソース間のネットワーク接続の確立」をご参照ください。
(RAM ユーザーを使用してタスクを開発する場合に必要)RAM ユーザーがメンバーとして DataWorks ワークスペースに追加され、[開発] ロールまたは [ワークスペース管理者] ロールが割り当てられます。 ワークスペース管理者ロールには、必要以上の権限があります。 ワークスペース管理者ロールを割り当てる場合は注意してください。メンバーを追加し、メンバーにロールを割り当てる方法の詳細については、「ワークスペースメンバーの追加とロールの割り当て」をご参照ください。
制限
このタイプのノードは、中国(杭州)、中国(上海)、中国(北京)、中国(深圳)、中国(成都)、中国(香港)、シンガポール、マレーシア(クアラルンプール)、ドイツ(フランクフルト)、米国(シリコンバレー)、米国(バージニア)の各リージョンでサポートされています。
ステップ 1:GBase 8a ノードを作成する
DataStudio ページに移動します。
DataWorks コンソール にログインします。 上部のナビゲーションバーで、目的のリージョンを選択します。 左側のナビゲーションペインで、 を選択します。 表示されるページで、ドロップダウンリストから目的のワークスペースを選択し、[データ開発に移動] をクリックします。
DataStudio ページで、目的のワークフローを見つけ、ワークフロー名を右クリックして、 を選択します。
[ノードの作成] ダイアログボックスで、[名前] パラメーターを構成し、[確認] をクリックします。 次に、作成したノードを使用して、タスクを開発および構成できます。
ステップ 2:GBase 8a タスクを開発する
(オプション)GBase 8a データソースを選択する
ワークスペースに複数の GBase 8a データソースが追加されている場合は、ビジネス要件に基づいて、ノードの構成タブの上部にある [データソースの選択] ドロップダウンリストから 1 つを選択する必要があります。 ワークスペースに GBase 8a データソースが 1 つだけ追加されている場合は、GBase 8a データソースを使用してタスクが開発されます。
Java Database Connectivity(JDBC)接続文字列モードで DataWorks に追加された GBase 8a データソースのみに基づいて GBase 8a ノードを作成できます。
SQL コードを開発する:簡単な例
GBase 8a ノードの構成タブにあるコードエディターで、タスクコードを記述します。サンプルコード:
SELECT * FROM usertablename; -- ユーザーテーブル名からすべての列を選択します。
SQL コードを開発する:スケジューリングパラメーターを使用する
DataWorks は、定期的なスケジューリングシナリオでのスケジューリングパラメーターの構成に基づいて、タスクのコード内で値が動的に置き換えられるスケジューリングパラメーターを提供します。 ${Variable} 形式でタスクコードに変数を定義し、[プロパティ] タブの [スケジューリングパラメーター] セクションで変数に値を割り当てることができます。サポートされているスケジューリングパラメーターの形式とスケジューリングパラメーターを構成する方法については、「サポートされているスケジューリングパラメーターの形式」および「スケジューリングパラメーターの構成と使用」をご参照ください。
サンプルコード:
SELECT '${var}'; -- 特定のスケジューリングパラメーターを var 変数に割り当てることができます。
ステップ 3:タスクスケジューリングプロパティを構成する
システムでノード上のタスクを定期的に実行する場合、ノードの構成タブの右側ナビゲーションペインにある [プロパティ] をクリックして、ビジネス要件に基づいてタスクスケジューリングプロパティを構成できます。詳細については、「スケジュール」をご参照ください。
タスクをコミットする前に、[プロパティ] タブで [再実行] パラメーターと [親ノード] パラメーターを構成する必要があります。
ステップ 4:タスクコードをデバッグする
次の操作を実行して、タスクがビジネス要件に基づいて期待どおりに構成されているかどうかを確認できます。
オプション。リソースグループを選択し、変数にカスタムパラメーターを割り当てます。
ノードの構成タブのトップツールバーにある
アイコンをクリックします。 [パラメーター] ダイアログボックスで、デバッグとタスクコードの実行に使用するスケジューリング用のリソースグループを選択します。タスクコードでスケジューリングパラメーターを使用する場合は、デバッグのために、タスクコードの値として変数にスケジューリングパラメーターを割り当てます。スケジューリングパラメーターの値割り当てロジックの詳細については、「デバッグ手順」をご参照ください。
タスクコードを保存して実行します。
トップツールバーで、
アイコンをクリックしてタスクコードを保存します。次に、
アイコンをクリックしてタスクコードを実行します。オプション。スモークテストを実行します。
ノードをコミットするとき、またはノードをコミットした後に、開発環境でノードのスモークテストを実行して、ノードが期待どおりに実行されるかどうかを確認できます。詳細については、「スモークテストの実行」をご参照ください。
ステップ 5:タスクをコミットしてデプロイする
ノード上のタスクが構成されたら、タスクをコミットしてデプロイする必要があります。タスクをコミットしてデプロイすると、システムはスケジューリング構成に基づいてタスクを定期的に実行します。
トップツールバーの
アイコンをクリックして、タスクを保存します。トップツールバーの
アイコンをクリックして、ノード上のタスクをコミットします。[送信] ダイアログボックスで、[変更の説明] パラメーターを構成します。次に、ビジネス要件に基づいて、タスクのコミット後にタスクコードを確認するかどうかを決定します。
説明タスクをコミットする前に、[プロパティ] タブで [再実行] パラメーターと [親ノード] パラメーターを構成する必要があります。
コードレビュー機能を使用して、タスクのコード品質を確保し、無効なタスクコードによって引き起こされるタスク実行エラーを防ぐことができます。コードレビュー機能を有効にすると、コミットされたノードコードは、コードレビューに合格した後にのみデプロイできます。詳細については、「コードレビュー」をご参照ください。
標準モードのワークスペースを使用する場合は、タスクをコミットした後に、実稼働環境にタスクをデプロイする必要があります。ノード上のタスクをデプロイするには、ノードの構成タブの右上隅にある [デプロイ] をクリックします。詳細については、「タスクのデプロイ」をご参照ください。
次のステップ
タスク O&M:タスクをコミットしてデプロイすると、タスクはスケジューリング構成に基づいて定期的に実行されます。対応するノードの構成タブの右上隅にある [オペレーションセンター] をクリックしてオペレーションセンターに移動し、タスクのスケジューリングステータスを表示できます。詳細については、「自動トリガーされたタスクの表示と管理」をご参照ください。