全部產品
Search
文件中心

DataWorks:OSS對象檢查節點

更新時間:Feb 07, 2025

OSS對象檢查節點可用於通過FTP協議周期性檢測指定檔案是否存在。如果檔案存在,則啟動調度下遊任務;如果不存在,則按照配置的間隔時間重複資料偵測,直到滿足檢測的停止條件時停止檢測。該節點通常作為DataWorks調度系統與其他調度系統之間傳遞訊號使用。本文為您介紹使用OSS對象檢查節點的流程和注意事項。

節點介紹

OSS對象檢查節點的典型應用情境:當DataWorks調度系統中的任務需要訪問一個外部資料庫時,但由於該資料庫的相關資料寫入任務不在DataWorks中,DataWorks無法知道該資料庫何時完成寫入任務並可以被訪問。如果DataWorks讀取未寫入完成的資料,則可能導致讀取的資料不全或讀取失敗。為了保證DataWorks成功讀取完整的外部資料庫的資料,此時,可以讓其他調度系統在資料庫中的資料寫入任務完成後,在指定檔案系統中進行檔案標記(例如,產生一個.done檔案),表明該任務已完成。然後在DataWorks中配置一個OSS對象檢查節點,周期性檢測該.done檔案是否存在,當檢測到檔案存在時,表明該資料庫中的資料寫入任務已經完成,可以啟動調度需要訪問該資料庫資料的任務。

說明
  • 其他調度系統可以自行指定產生標記檔案的檔案系統。

  • 本文以產生的標記檔案為.done樣本,在實際使用中,您可以自訂標籤檔案的格式、名稱等資訊。

  1. 其他調度系統檢測到外部資料庫的資料已就緒(即資料寫入已完成,可以被訪問),會在指定的檔案系統中產生一個標記檔案,例如,XXXX2024-09-29.done。本文以.done為尾碼的檔案作為標記檔案,您也可以根據業務需求,自訂標籤檔案。

  2. OSS資料來源讀取檔案系統中的標記檔案。

  3. OSS對象檢查節點根據配置的檢測策略,定期檢測OSS資料來源中該標記檔案是否存在。

    • 如果檢測到該標記檔案存在,則表示外部資料庫中的資料已準備就緒,可以被訪問,OSS對象檢查節點會將檢測成功的結果反饋至下遊節點。

    • 如果檢測該標記檔案不存在,則表示外部資料庫中的資料未準備就緒,不能被訪問,OSS對象檢查節點會將檢測失敗並且不會將結果反饋至下遊節點,同時根據配置的檢測策略繼續檢測,直到達到預設的檢測上限後停止檢測。

  4. 下遊節點根據OSS對象檢查節點的反饋結果,選擇是否啟動訪問外部資料庫的資料。

    • 如果OSS對象檢查節點反饋檢測成功,則下遊節點啟動訪問外部資料庫的資料。

    • 如果OSS對象檢查節點反饋檢測失敗,則下遊節點不啟動訪問外部資料庫的資料。

  5. 下遊節點訪問外部資料庫的資料。

說明

外部資料庫可以包含但不限於Oracle、MySQL、SQLServer等各類資料庫或儲存服務。

前提條件

  • RAM帳號添加至對應空間(可選)。

    進行任務開發的RAM帳號已被添加至對應工作空間中,並具有開發空間管理員(許可權較大,謹慎添加)角色許可權。新增成員並授權,詳情請參見為工作空間增加空間成員

  • 對應空間已綁定Serverless資源群組。詳情請參見:使用Serverless資源群組

  • 進行OSS對象檢查節點開發前,需建立對應的OSS對象檢查節點,詳情請參見:建立任務節點

注意事項

  • 分鐘和小時周期調度的任務,OSS對象檢查節點的Check停止策略不支援配置為Check停止時間,該類任務您只能選擇使用Check停止次數停止策略。

  • 在任務運行時,將會通過MaxCompute訪問身份檢查OSS對象,請確認OSS Bucket使用權限設定。

  • 在開發/生產環境中,將會通過空間管理員職責訪問身份檢查OSS對象,請確認OSS Bucket使用權限設定。

步驟一:開發OSS對象檢查節點

進入已建立OSS對象檢查節點後,即可按照介面提示進行配置。

  1. 配置檢查對象及檢測策略。

    • OSS對象:輸入OSS物件路徑,支援${bizdate}、${cyctime}等參數。

    • 逾時時間:檢查節點檢查對象檔案的逾時時間。

  2. OSS對象檢查節點在配置完檢測策略後,即可進行調度配置,詳情請參見調度配置

步驟二:節點發布與營運

  1. 完成調度配置後,即可對已完成的OSS對象檢查節點提交發布至生產環境,詳情請參見:節點發布

  2. 發布完成的任務,將按照您配置的調度進行周期運行,可在營運中心 > 任務營運 > 周期任務營運 > 周期任務中查看發行的周期任務,並對任務進行營運操作,詳情請參見:營運中心入門