全部產品
Search
文件中心

DataWorks:基本概念

更新時間:Jun 19, 2024

本文為您介紹DataWorks中,工作空間、商務程序、解決方案、組件、任務、執行個體、業務日期、定時時間、提交、指令碼開發、資源、函數和輸出名稱等基本概念。

工作空間

工作空間是DataWorks管理工作、成員,分配角色和許可權的基本單元。工作空間管理員可以加入成員至工作空間,並賦予工作空間管理員、開發、營運、部署、安全性系統管理員或訪客角色,以實現多角色協同工作。

說明

建議您根據部門或業務板塊來劃分工作空間。

一個工作空間支援添加多種資料來源執行個體。其中,在資料開發中綁定MaxCompute、Hologres、AnalyticDB for PostgreSQL、AnalyticDB for MySQL 3.0、ClickHouse、E-MapReduce和CDH/DCP資料來源後,即可在工作空間開發和調度引擎任務。

商務程序

針對業務實體,抽象出商務程序的概念,協助您從業務視角組織代碼的開發,提高任務管理效率。

說明

商務程序可以被多個解決方案複用。

商務程序協助您從業務視角組織代碼:

  • 支援基於任務類型的程式碼群組織方式。

  • 支援多級子目錄(建議不超過四級)。

  • 支援從業務視角查看整體的商務程序,並進行最佳化。

  • 支援根據商務程序組織發布和營運。

  • 提供商務程序看板,協助您更高效地進行開發。

解決方案

您可以自訂群組合部分商務程序為一個解決方案

解決方案的優勢如下:

  • 一個解決方案可以包括多個商務程序。

  • 解決方案之間可以複用相同的商務程序。

  • 組織完成的方案套件含各類節點,提高您的使用體驗。

組件

您可以將SQL中的通用邏輯抽象為組件,提高代碼的複用性。

SQL代碼的處理過程通常是引入一到多個來源資料表,通過過濾、串連和彙總等操作,加工出新的業務需要的目標表。組件是帶有多個輸入參數和輸出參數的SQL代碼過程模板。

任務(Task)

任務是對資料執行的操作的定義,樣本如下:

  • 通過資料同步節點任務,將資料從RDS同步至MaxCompute。

  • 通過MaxCompute SQL節點任務,運行MaxCompute SQL來進行資料的轉換。

每個任務使用0或0個以上的資料表(資料集)作為輸入,產生一個或多個資料表(資料集)作為輸出。

任務主要分為節點任務(Node Task)、工作流程工作(Flow Task)和內部節點(inner Node)。任務

任務類型

描述

節點任務(Node Task)

一個資料執行的操作。可以與其它節點任務、工作流程工作配置依賴關係,組成DAG圖。

工作流程工作(Flow Task)

滿足一個業務情境需求的一組內部節點,組成一個工作流程工作,建議工作流程工作的節點數小於10個。

工作流程工作內部節點無法被其它工作流程工作、節點任務依賴。工作流程工作可以與其它工作流程工作、節點任務配置依賴關係,組成DAG圖。

說明

從DataWorks V1.0升級的任務,仍保留工作流程的概念。DataWorks V2.0及以上版本已無法建立工作流程工作,您可選擇建立商務程序進行後續操作。

內部節點(innerNode)

工作流程工作內部的節點,與節點任務的功能基本一致。您可以通過拖拽形成依賴關係,其調度周期會繼承工作流程工作的調度周期,無法進行單獨配置。

執行個體(Instance)

執行個體是某個任務在某時某刻執行的一個快照。調度系統中的任務,經過調度系統、手動觸發運行後,會產生一個執行個體。執行個體中會有任務的已耗用時間、運行狀態和作業記錄等資訊。

例如設定每天2:00運行Task1執行個體,調度系統會在每天23:30根據周期節點定義好的時間,自動產生一個快照,即Task1第二天2:00啟動並執行執行個體。到第二天2:00時,如果判斷上遊執行個體已經完成,Task1執行個體便會如期啟動運行。

說明

您可進入營運中心周期任務營運,查詢執行個體的相關資訊。

業務日期與定時時間

  • 業務日期

    指昨天,在離線計算情境下,交易日期為業務發生的日期。DataWorks預設取調度時間內,任務預期調度已耗用時間的前一天(即昨天)的日期為業務日期,精確到天。例如,今天統計前一天的營業額,此處的前一天,指交易發生的日期,也就是業務日期。

  • 定時時間

    指今天,即某業務資料加工任務的預期執行時間。DataWorks預設取調度時間內,任務預期調度啟動並執行時間點(即今天)為定時時間,精確到秒。任務預期執行時間,與實際開始執行時間並非完全一致。任務實際開始執行時間受多方因素影響。

提交(Submit)

提交是指開發的節點任務、商務程序,從DataWorks開發環境發布至調度系統的過程。完成提交後,相應的代碼、調度配置全部合并至調度系統中,調度系統根據相關配置進行調度操作。

說明

未提交的節點任務、商務程序不會進入調度系統。

指令碼開發(Script)

指令碼開發是提供給資料分析使用的一個代碼儲存空間。指令碼開發的代碼無法發布到調度系統,無法進行調度參數配置,僅可以進行部分資料查詢分析的工作。

資源、函數

MaxCompute引擎使用的資源和函數,詳情請參見資源函數

輸出名稱

輸出名稱:每個任務(Task)輸出點的名稱。它是您在單個租戶(阿里雲帳號)內設定依賴關係時,用於串連上下遊兩個任務(Task)的虛擬實體。

當您在設定某任務與其它任務形成上下遊依賴關係時,必鬚根據輸出名稱(而不是節點名稱或節點ID)來完成設定。設定完成後該任務的輸出名也同時作為其下遊節點的輸入名稱。輸出名稱

說明

輸出名稱可以作為某個Task在同租戶內,區別於其它Task的唯一概念對象,每個節點的輸出名稱預設為工作空間名稱.系統產生9位元字.out。您可以對Task增加自訂輸出名,但需要注意輸出節點名稱在租戶內不允許重複。

中繼資料

中繼資料是資料的描述資料,可以為資料說明其屬性(名稱、大小、資料類型等),或結構(欄位、類型、長度等),或其相關資料(位於何處、擁有者、產出任務、存取權限等)。DataWorks中中繼資料主要指庫、表相關的資訊,中繼資料管理對應的主要應用是資料地圖

補資料

完成周期任務的開發,將任務提交發布之後,任務會按照調度配置定時運行。如果您希望對歷史時間段內的資料進行計算,您可以使用補資料功能。補資料操作產生的補資料執行個體將按照指定的業務日期運行。