Dataphin は、各ノードのスケジューリング依存関係を構成することにより、ビジネスプロセスの順序どおりの実行を保証し、ビジネスデータの効果的かつタイムリーな配信を保証します。 このトピックでは、ストリームバッチ統合タスクのオフラインモードの依存関係の構成について説明します。
背景情報
スケジューリングの依存関係は、ノード間のアップストリームとダウンストリームの関係です。 Dataphin では、ダウンストリームのタスクノードは、アップストリームのタスクノードが正常に完了した後にのみ実行を開始します。 これらの依存関係を構成することにより、タスクは実行時に正しいデータを受信することが保証されます。 Dataphin は、アップストリームノードの実行ステータスに基づいて最新のアップストリームテーブルデータの可用性を判断し、ダウンストリームノードがデータを取得できるようにします。 このメカニズムにより、ダウンストリームノードがアップストリームテーブルデータの準備ができる前にデータを取得しようとするのを防ぎます。
手順
オフラインモードの構成エントリを参照して、[オフラインモード] 構成パネルにアクセスします。
オフラインモード構成パネルの [依存関係] セクションで、[依存関係] パラメーターを設定します。
パラメーター
説明
解析を開始
ノードのタスクタイプが SQL の場合、解析開始 をクリックできます。 この操作により、システムはコードのテーブルを解析し、出力名に対応するテーブル名を識別するように求められます。 この出力名に関連付けられたノードは、現在のノードのアップストリームの依存関係になります。
コードがプロジェクト変数を参照している場合、または特定のプロジェクトがない場合は、スケジューリングの安定性を確保するために、システムはデフォルトで本番プロジェクト名を使用します。 たとえば、開発プロジェクト名が
onedata_devの場合:select * from s_orderを指定するコードは、onedata.s_orderの依存関係になります。select * from ${onedata}.s_orderを使用したコードも、onedata.s_orderの依存関係になります。select * from onedata.s_orderを指定するコードは、onedata.s_orderの依存関係になります。select * from onedata_dev.s_orderを指定するコードは、onedata_dev.s_orderの依存関係になります。
アップストリームの依存関係
ノードタスクのスケジューリングが依存するアップストリームノードを追加するには、次の手順を実行します。
[アップストリームを手動で追加] をクリックします。
[新しいアップストリームの依存関係] ダイアログボックスで、次の方法で依存ノードを検索します。
依存ノードの出力名キーワードを入力します。
virtual と入力して、仮想ノードを検索します(各テナントまたはエンタープライズは初期化時にルートノードを持ちます)。
説明注: ノードの出力名はグローバルに一意であり、大文字と小文字は区別されません。
[追加の確認] をクリックします。
[アクション] 列の
アイコンをクリックして、追加された依存ノードを削除することもできます。現在のノード
他のノードが依存関係を確立できるように、現在のノードの出力名を設定するには、次の手順に従います。
[出力を手動で追加] をクリックします。
[現在のノードの出力を追加] ダイアログボックスで、出力名を入力します。 通常は
プロジェクト名.テーブル名という、大文字と小文字が区別されない一貫した命名規則に従ってください。 この規則は、このノードによって生成されたテーブルを識別し、他のノードによるスケジューリングの依存関係の選択を容易にするのに役立ちます。たとえば、
onedata_devという名前の開発プロジェクトの場合、推奨される出力名はonedata.s_orderです。 出力名をonedata_dev.s_orderに設定すると、select * from onedata_dev.s_orderを指定するコードのみがアップストリームの依存ノードを解析できることを意味します。[追加の確認] をクリックします。
現在のノードの既存の出力名については、次のことができます。
追加された出力名を削除するには、[アクション] 列の
アイコンをクリックします。ノードが送信または公開されており、ダウンストリームの依存関係(送信済みタスクを含む)がある場合は、[アクション] 列の
アイコンをクリックして、依存するダウンストリームノードを表示します。
[確認] をクリックして、オフラインモードの依存関係構成を完了します。