タスクフローノード
概要
AEデータ開発プラットフォームでは、タスクフローノードはデータ処理フローを構成する基本単位であり、データ処理タスクを抽象化したものと考えることができます。各ノードには明確な入力、処理ロジック、出力があります。
タスクフローノードはデータ処理の全工程をつなぎ、ノード間の依存関係によってデータを順序どおりに流し、処理します。ノードはビジュアルな編成に対応しており、開発者がデータ処理フローを設計・管理しやすくなっています。ノードの状態や実行結果から、データ処理の状況をリアルタイムに把握し、問題を早期に発見して解決できます。
タスクフローの【開発モード】で、サイドバーのツールエリアにある「タスクリスト」ボタンをクリックすると、現在のタスクフロー内のすべてのタスクノードを確認できます。
タスクフローノードの作成
タスクフローの【開発モード】のサイドバーのツールエリアで、「+新規タスク追加」ボタンをクリックすると、すべてのタスクノードタイプが表示されます。
ノードカードをDAG図にドラッグ&ドロップすることで、タスクノードを追加できます。
ノードをDAG図にドラッグ&ドロップすると、「ノードの作成」ダイアログが表示されます。新しいノードのノード名を設定し、ノードタイプを選択できます。
「作成して編集する」をクリックすると、ノードの編集ページに直接入り、内容を入力できます。
タスクフローノードの編集
ノードをダブルクリックして選択し、ページ上部の「編集」ボタンをクリックすると、編集モードに入ります。
編集モードでは、現在のノードの内容を変更できます。「デバッグ」をクリックすると、試験実行によるテストを行えます。
AI(TIKI)を使ってログ解読を行ったり、文を修正したりすることもできます。
タスクフローノードのタイプ
Trino SQLノード
Trino SQLノードは標準のSQL構文に対応しています。Trino SQLノードを使うと、タスクフロー内で効率的なデータクエリと処理のロジックをすばやく構築でき、特に複数のデータソースを統合する必要がある場面に適しています。
複雑なSQL変換(ウィンドウ関数、JOIN、集計など)を実行し、中間結果を生成したり、目標テーブルに書き込んだりできます。
オフライン同期プランノード
データ開発プラットフォームのタスクフローでは、【オフライン同期プラン】ノードを使って異なるデータソース間のバッチデータ転送を行います。定期スケジューリングと全量 / 増分同期に対応しています。
作成済みのオフライン同期プランをタスクフローにマウントし、定期スケジューリングで使用できます。
主な使い方と注意事項は次のとおりです:
-
クロスソースのデータ移行
リレーショナルデータベース(MySQLなど)、ファイルシステム(HDFSなど)、データウェアハウス(Hiveなど)などのデータソースから、目標ストレージ(ClickHouse、Dorisなど)への同期に対応しています。 -
全量 / 増分同期
- 全量同期:毎回目標テーブルを上書きで書き込みます(小さなテーブルや初期化に適しています)。
- 増分同期:タイムスタンプや自動採番IDなどの条件に基づいて増分更新します(例:
WHERE update_time > '${bd}')。
-
データ変換
フィールド照合、型変換、フィルター条件などの簡単なETL操作に対応しています(例:intをbigintに変換)。
タスクインスタンスの確認ノード
チェックノードは特殊なタスクノードの一種で、主な機能は、条件を満たす特定のオブジェクトが存在するかどうかを定期的にチェックすることです。チェックに合格するとタスクノードは実行を続け、チェックに失敗すると実行を続けません(その結果、タスクフローが終了する場合があります)。チェックノードの内容構成はSQLノードとは異なり、主にフォームで内容を設定します。チェックノードの主な設定項目は次のとおりです:
- チェック対象:チェックする内容であり、最も重要な部分です。チェック対象は複数オブジェクトに対応しています。「オブジェクトを追加」をクリックすると複数のチェック対象を追加でき(最大20個)、複数のオブジェクトが存在するかどうかを同時に識別します。複数のオブジェクトの間では「且」/「または」の条件を切り替えられます
- チェック対象のフィルター:一部のチェックノードでは、チェックする内容がより細かくなります。たとえばパーティションテーブルのチェックでは、パーティションテーブルが存在するかどうかに加えて、特定のパーティションが存在するかどうかもチェックする必要がある場合があります。この例は追加条件が必要な場面で、タスク / タスクフローの特定の基準時刻のインスタンスが存在するかどうかをチェックしています
- チェック合格条件:一般に、チェックの合格条件は、チェック対象が存在するかどうか、または特定の状態にあるかどうかです
- チェック頻度:どのくらいの間隔でチェックするかで、単位は分です
- チェック停止施策:どのような場合にチェックノードがチェックを停止するかです。「チェック施策」の「チェック回数」で設定し、設定した回数を超えてもチェックに合格しない場合は、チェック失敗としてチェックを停止します(「チェック施策」の「検査頻度」が前の項目です)
流インスタンス検査ノード
【流インスタンス検査】ノードは、現在のタスクフローまたは他のタスクフローのインスタンスの実行状態をチェックし、フロータスクが想定どおりに実行されるようにするためのノードです。
チェック条件を設定することで、現在のタスクフローまたは他のタスクフローを定期的にチェックできます。
Shellノード
ShellノードはカスタムShellスクリプトを実行するためのノードで、データ処理、ファイル操作、ツールの呼び出しなどのタスクを柔軟に実現できます。
Shellノードを使うと、タスクフローにカスタム操作を組み込み、プラットフォーム組み込みノードの不足を補って、複雑なデータ処理や運用自動化のニーズを実現できます。
タスクノードの状態
| タスクステータス | 状態の説明 | 遷移先 |
|---|---|---|
| リリース待ち |
| リリース中 削除済み |
| リリース中 |
| オンライン リリース待ち:リリース失敗時に戻る |
| オンライン |
| リリース待ち オンライン(削除待ち) |
オンライン(削除待ち) |
| 削除済み オンライン |
| 削除済み |
| - |
タスクフローノードの実行インスタンス
【運営】-【タスクノードインスタンス】モジュールで、すべてのタスク実行インスタンスと実行状態を確認できます。

