スケジューリング依存関係は、論理テーブルおよび論理ファクトテーブルのノードの実行順序を定義します。Dataphin はこれらの依存関係を使用して、ビジネスフロー内でノードを順次実行します。これにより、ビジネスデータが正確かつ時間通りに生成されることが保証されます。このトピックでは、論理テーブルおよび論理ファクトテーブルのスケジューリング依存関係を構成する方法について説明します。
操作手順
Dataphin のホームページのトップメニューバーで、[Develop] > [Data Studio] を選択します。
[Develop] ページで、トップメニューバーから [Project] を選択します。Dev-Prod モードの場合は、[Environment] も選択する必要があります。
左側のナビゲーションウィンドウで、[標準化モデリング] > [論理次元テーブル] または [論理事実テーブル] を選択します。「論理テーブル」リストで、対象の論理テーブルの名前をクリックします。
[Logical Table] タブで、メニューバーの [Scheduling Configuration] をクリックして、[Scheduling Configuration] パネルを開きます。
[Scheduling Properties] エリアで、論理テーブルの上流依存関係を構成します。
[Upstream Dependency]
[Auto Parse]
[Auto Parse] をクリックします。Dataphin は論理テーブルの計算ロジックを自動的に解析し、その上流ノードと出力テーブルを識別します。解析が完了すると、識別されたすべての依存テーブルが上流依存関係リストに追加されます。解析された依存テーブルの詳細を表示したり、編集または削除したりできます。
説明自動解析によって識別された入力テーブルに複数の出力ノードがある場合、これらのノードはすべてデフォルトで上流依存関係として設定されます。
解析されたすべての依存テーブルの依存サイクルは、デフォルトで [Current Cycle] に設定されます。
ルートノードの追加
ノードに上流依存関係がない場合は、[Add Root Node] をクリックして、ルートノードを上流依存関係として設定します。
説明初期化中に、各テナントまたはエンタープライズには、名前が virtual_root_node で始まる仮想ルートノードが割り当てられます。
このノードの前のサイクルを追加
これにより、ノードの現在の実行は、前日や n 時間前など、以前の実行の成功した完了に依存するようになります。
[Add Dependency]
[Auto Parse] がスケジューリング依存関係の解析に失敗した場合、または [Auto Parse] によって生成された上流依存関係の構成がご利用のアプリケーションに不適切な場合は、[+Add Dependency] をクリックして、ノードの**上流依存関係**を手動で追加できます。
重要依存関係を追加すると、[Dependency Cycle] と [Dependency Policy] は推奨されるデフォルト値に自動的に設定されます。変更を行うには、依存関係リストの
編集アイコンをクリックして、個々の依存関係の設定を変更します。[Dependency Cycle]: 上流ノードインスタンスが実行されるようにスケジュールされている時間範囲です。通常、これは現在のサイクル (00:00~24:00) をカバーする当日です。
[Dependency Policy]: 依存サイクル内に複数のインスタンスが存在する場合に、どのインスタンスに依存するかを指定します。インスタンスが 1 つしかない場合、どのポリシーオプションも有効です。上流のスケジューリングに対する潜在的な変更との互換性を確保するために、相対パスポリシーのみがサポートされています。
クロスサイクル依存関係のデフォルトポリシーの詳細については、「附録: クロスサイクル依存関係のデフォルトポリシー」をご参照ください。
依存関係の追加 - 物理ノード
ノードリストから 1 つ以上の物理ノードを選択します。[This Project]、[Project]、[Node Type]、[Node Name] キーワード、または [Output Table Name] キーワードで物理テーブルノードを検索およびフィルタリングできます。
[Add Dependency - Logical Table Node]
ノードリストから 1 つ以上の論理テーブルノードを選択します。[Logical Table Type]、[Module]、および [Logical Table Name] で論理テーブルノードを検索およびフィルタリングできます。
論理テーブル全体ではなく、特定のフィールドに依存するには、ノードリストの[依存フィールド]列にある
アイコンをクリックして、論理テーブルで利用可能なフィールドを表示します。その後、必要なフィールドを選択できます。[Add Dependency - Cross-tenant Collaboration Node]
ノードリストから 1 つ以上のクロステナントコラボレーションノードを選択します。[Tenant]、[Node Type]、および [Node Name] キーワードでこれらのノードを検索およびフィルタリングできます。
[Outputs of This Node]
システムはノードの出力名を自動的に生成します。出力名をさらに追加するには、[Auto-generate Output Name] をクリックします。
重要システムは出力名を使用してスケジューリング依存関係グラフを構築します。出力名は自動的に生成されます。手動での変更は**推奨されません**。
[OK] をクリックして、スケジューリング依存関係の構成を保存します。
附録: クロスサイクル依存関係のデフォルトポリシー
このノードのスケジューリングサイクル | 上流ノード | 上流ノードのスケジューリングサイクル | 祖先ノードの自己依存 | デフォルトの依存サイクル |
月 | このノード (自己依存) | - | 前のサイクル (1日前) | |
週 | このノード (自己依存) | - | 前のサイクル (1日前) | |
日 | このノード (自己依存) | - | 前のサイクル (1日前) | |
時間 | このノード (自己依存) | - | 過去24時間 | |
分 | このノード (自己依存) | - | 過去24時間 | |
日/週/月 | このノードではない | 日 | 現在のサイクル (当日) | |
日/週/月 | このノードではない | 時間/分 | いいえ | 現在のサイクル (当日) |
日/週/月 | このノードではない | 時間/分 | はい | 現在のサイクル (当日) |
月/週/日/時間/分 | このノードではない | 月/週 | はい | 現在のサイクル (当日) |
月/週/日/時間/分 | このノードではない | 月 | いいえ | 現在のサイクル (当日) |
月/週/日/時間/分 | このノードではない | 週 | いいえ | 現在のサイクル (当日) |
時間/分 | このノードではない | 日 | 現在のサイクル (当日) | |
時間/分 | このノードではない | 時間/分 | 現在のサイクル (当日) |