呼叫任務

  • 文档创建者:Wendy123456
  • 历史版本:29
  • 最近更新:Nikozhan 于 2025-04-15
  • 1. 概述

    1.1 版本說明

    FineDataLink 版本功能變動
    3.2
    新增節點「呼叫任務」,可以在當前任務中呼叫執行其他任務,參數傳遞不支援跨層級,僅可傳遞給子任務,不可傳遞給孫任務
    3.7.1
    可實現參數跨層級傳遞
    4.1.1呼叫任務下拉框中,遮蔽成環任務

    1.2 應用場景

    使用者希望可以在當前定時任務中呼叫平台內其他定時任務,被呼叫的任務被放到當前任務裏編排,「呼叫任務」節點可滿足該需求。

    注:支援視覺化展示父子任務層級呼叫關係,使用者可查看該定時任務被哪些任務呼叫,以及該任務呼叫了哪些任務。詳情請參見:任务关系

    2. 範例

    2.1 場景模擬

    我們建立 2 個定時任務,父任務子任務父任務中使用「呼叫任務」節點來呼叫子任務,並且透過資料同步節點使用子任務中生成的結果資料進行二次加工,獲得最終需要的分析資料。

    2.2 建立被呼叫任務

    1)建立一個 定時任務,重新命名為子任務,並將一個「資料同步」節點拖到設計介面,設定節點的資料來源,SQL 語句取出 sales 表中所有的資料,如下圖所示:

    範例表資料:sales.xlsx

    2)設定資料去向,將 sales 表中的資料同步到另一個資料庫的表 salescopy 中,寫入方式採用預設設定即可,如下圖所示:

    3)點選「儲存」這個任務即可。

    2.3 建立執行呼叫的任務

    1)建立一個 ETL 任務,重新命名為「父任務」,並將一個「呼叫任務」節點拖到設計介面,呼叫任務選擇上面剛建好的「子任務」,「子任務」沒設定參數,所以參數傳遞保持預設不勾選即可。

    「參數傳遞」介紹請參見本文第三章內容。

    2)將一個「資料同步」節點拖到設計介面,設定資料來源,SQL 語句對子任務生成的 salescopy 表的資料進行處理,統計出每個城市的銷售總和。如下圖所示:

    3)如下圖設定資料去向,使用自動建表將上面處理的資料儲存到另一張表 staticsale 中去,欄位映射採用預設設定即可。

    4)使用線條將「資料同步」節點跟它的上游「呼叫任務」節點連起來;在實際生產環境中,此時需要設定父任務的調度配置,

    注:由於當前範例中,子任務是被父任務呼叫的任務,所以子任務不需要設定調度配置,但是父任務需要設定調度配置,父任務每次執行會順便拉起子任務的執行。

    2.4 運作任務

    1)點選右上角「儲存並運作」,儲存並運作該任務,日誌處出現執行成功資訊表示任務成功運作,如下圖所示:

    2)可以看到資料庫中多了一張父任務生成的結果表 staticsale,城市銷售總和資料已經存到該表中。

    3. 功能說明

    3.1 設定項介紹

    3.1.1 呼叫任務

    下拉框選擇其他定時任務,自身和沒管理權限的任務不可選。

    4.1.1 及之後版本,呼叫任務下拉框中,遮蔽成環任務。範例:A 呼叫 B,B 呼叫 C ,C 不能呼叫 A。

    3.1.2 參數傳遞

    1)3.7.1 之前版本:

    預設不勾選,如果勾選了將當前任務的參數傳遞給子任務,那麼定義的任務參數、參數指派匯出的參數都可以傳遞給子任務使用

    其他說明:

    • 勾選了參數傳遞,任務定義的參數,子任務可以直接使用,但參數指派節點的參數只能被子任務的首個節點使用。

    • 參數傳遞不支援跨層級,僅可傳遞給子任務,不可傳遞給孫任務。

    2)3.7.1 及之後版本:

    預設不勾選,如果勾選了將當前任務的參數傳遞給子任務,那麼定義的任務參數、參數指派匯出的參數都可以傳遞給子任務使用

    注:支援參數跨層級傳遞

    勾選後,介面如下圖所示:

    參數指派:僅所在的分支上游「参数赋值」匯出的參數。參數指派節點的參數可以被下游分支所有的節點使用,但是不可跨分支被其他節點使用

    任務參數:所有任務參數都可以選擇傳遞給子任務

    跨層級傳遞邏輯說明:

    在選擇參數傳遞給子任務時,只能選擇本任務內已經定義好的參數,所以在超過兩個層級的場景下:子任務想要用到父父任務裏的參數,需要上層的兩級任務均有同名參數,且都配置了傳遞給子任務

    範例:若任務 c 裏有一個參數 p1 ,如果任務 a 也想用,那麼任務 b 裏也要有一個參數 p1 ,然後在任務 c 和任務 b 裏都配置參數 p1 向子任務傳遞:

    3.2 日誌說明

    日誌邏輯
    範例
    呼叫任務僅展示呼叫節點的執行結果,不在父任務展示詳細日誌


    使用者可跳轉到被呼叫的任務查看具體的日誌

    在下面範例中,任務運作後,日誌只顯示「呼叫任務-複本」節點是否運作成功

    點選上圖的「查看日誌」連結,跳轉到被呼叫的任務,查看具體日誌

    4. 注意事項

    4.1 參數名衝突

    子任務裏參數可能會跟父任務傳遞過來的參數產生同名衝突的情況,當參數名重複時子任務各參數優先如下:

    1)3.7.1 之前版本

    參數指派 > 任務參數 > 父任務的參數指派 > 父任務的任務參數 > 系統參數

    2)3.7.1 及之後版本

    參數指派>父任務的參數指派>父任務的任務參數>任務參數>系統參數

    4.2 任務調度衝突

    父任務和子任務都設定了調度,如果父任務執行時,子任務正在運作,此時父任務觸發子任務,則會進入佇列等待狀態。

    父任務和子任務都設定了調度,多個父任務先後呼叫子任務時,子任務將佇列執行,按照呼叫時間佇列。


    附件列表


    主题: 資料開發-定時任務
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!