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