全部產品
Search
文件中心

DataWorks:資料開發(DataStudio)

更新時間:Dec 24, 2024

DataWorks資料開發(DataStudio)模組用於定義周期調度任務的開發及調度屬性,與營運中心配合使用,面向各引擎(MaxCompute、Hologres、EMR等)提供可視化開發主介面,支援智能代碼開發、多引擎混編工作流程、正常化任務發布等能力,協助您輕鬆構建離線數倉、即時數倉與即席分析系統,保證資料生產的高效穩定。本文為您介紹資料開發(DataStudio)的相關概念、能力以及開發前準備工作。

進入資料開發

登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的資料開發與治理 > 資料開發,在下拉框中選擇對應工作空間後單擊進入資料開發

模組介紹

能力概覽

資料開發(DataStudio)的主要功能介紹如下。您可參考資料開發相關概念輔助理解。

類型

描述

對象組織及管理

DataWorks資料開發提供的對象組織與管理機制如下:

  • 對象組織:提供解決方案 > 商務程序兩級管理員模式。DataWorks基於商務程序提供分類樹與可視化面板兩種對象組織方式。您可通過分類樹建立所需對象,或使用商務程序可視化面板拖拽組件,快速構建資料加工流,並支援通過解決方案對商務程序進行進一步的管理。

  • 對象管理:支援使用可視化方式建立及管理節點、表、資源及函數。

更多詳情請參見建立商務程序管理方式

說明

在資料開發(DataStudio)中,每個工作空間支援建立的商務程序及對象數量限制如下:

  • 商務程序:最多支援建立10,000個。

  • 對象(節點、檔案、表、資源及函數):保有DataWorks企業版的使用者,支援建立的對象數量上限為200,000;保有DataWorks專業版、標準版及基礎版的使用者,支援建立的對象數量上限為100,000

若當前工作空間的商務程序及對象數量達到上限,您將無法再執行建立操作。

任務開發

  • 能力更豐富:

    • 提供豐富的引擎節點,對引擎能力進行全面封裝。

    • 提供通用類節點,可結合引擎節點進行複雜邏輯處理。例如,外部系統觸發調度,檔案對象檢查、條件分支、迴圈執行代碼、輸出結果傳遞等複雜流程式控制制。

  • 操作更簡單:

    • 提供商務程序可視化開發機制,可通過拖拽組件方式快速實現多引擎任務的混合編排。

    • 提供智能化的SQL編輯器。使用SQL編輯器時,提供智能提示、SQL運算元結構可視化展示、許可權校正等功能。

DataWorks支援的節點類型,詳情請參見DataWorks節點合集

任務調度

  • 觸發方式:支援外部系統觸發、事件觸發、以及通過內部血緣解析上遊觸發任務調度運行。

  • 依賴類型:支援設定同周期與跨周期依賴,以及多種調度周期、不同類型任務的相互依賴。

  • 執行控制:支援設定任務是否重跑;支援通過上遊任務控制下遊整體調度時間;支援設定調度任務的生效日期;支援定義任務的調度類型。例如,空跑(即不執行且不阻塞下遊任務調度);凍結(不執行並阻塞下遊任務調度)。

  • 等冪保障:提供任務重跑機制,支援自訂重跑條件與重跑次數。

更多調度相關說明,詳情請參見時間屬性配置說明調度依賴配置指引

任務調試

提供單任務調試機制與基於商務程序的工作流程調試機制。詳情請參見任務調試流程

流程管控

提供正常化任務發布機制,及多種方式的流程管控機制。包括但不限於以下情境:

  • 提供任務發布前人工評審代碼(程式碼檢閱),與煙霧測試 (Smoke Test),並支援阻塞發布存在問題的生產調度流程。

  • 支援結合資料治理的治理項檢查、擴充程式自訂校正邏輯等方式,對任務提交及發布生產調度的操作進行自訂且自動化的流程管控。

其他

  • 開放能力:結合開放平台提供豐富的OpenAPI,並內建大量擴充點,可通過DataWorks開放平台實現DataWorks資料開發相關事件訊息的訂閱。

  • 許可權控制:支援介面功能許可權及資料存取權限控制。詳情請參見空間級模組許可權管控

  • 查看操作記錄:DataWorks整合阿里雲Action Trail(ActionTrail)產品,您可在ActionTrail中查看及檢索阿里雲帳號最近在DataWorks上的操作行為事件記錄。詳情請參見查看操作記錄

介面認識

您可通過功能索引瞭解資料開發操作介面,以及各模組功能如何使用。

開發流程

DataWorks資料開發支援建立多種類型引擎的即時同步任務、離線調度任務(包括離線同步任務、離線加工任務)、手動觸發任務。其中,資料同步相關能力您可前往Data Integration模組瞭解;實際開發調度任務時,不同引擎任務的配置要求存在差異,您需先瞭解不同引擎基於DataWorks開發的注意事項及相關說明,再根據待開發的任務類型開始資料開發工作。

  • 各引擎開發說明:DataWorks支援建立各種資料來源並進行引擎開發工作單位,不同引擎任務所需的配置存在差異,其中主要引擎任務的開發說明請參見:

  • 通用開發流程:DataWorks的工作空間分為標準模式和簡單模式,不同模式工作空間下調度任務的開發流程存在一定差異,具體如下。

    標準模式工作空間開發流程。標準模式工作空間開發流程

    簡單模式工作空間開發流程。簡單模式工作空間開發流程

    • 基本流程:以標準模式為例,調度任務的開發流程包括開發、調試、調度配置、提交、發布、營運等階段。其中,任務開發的通用開發流程,請參見通用開發流程

    • 流程管控:任務在開發過程可結合資料開發(DataStudio)內建的程式碼檢閱煙霧測試 (Smoke Test)等功能,以及資料治理中心預設的檢查項、開放平台基於擴充程式實現自訂邏輯校正等功能,保障開發工作單位符合規範。

      說明

      不同工作空間模式涉及的流程管控操作存在差異,具體請以實際管控功能為準。

管理方式

DataWorks資料開發的商務程序是具體代碼開發、資源群組織的單位,是業務的抽象實體,協助您使用業務視角來組織資料代碼開發。工作空間之間的商務程序、任務節點為獨立開發,互不影響。更多關於商務程序的使用,詳情請參見建立商務程序

商務程序的呈現包括分類樹及操作面板兩種方式,協助您基於業務視角組織代碼,使得資源類別更明確,商務邏輯更清晰。

  • 分類樹結構:提供基於任務類型的程式碼群組織方式。

  • 商務程序面板:提供流程化的商務邏輯展現方式。

開發組織圖

開始使用

環境準備

若您要在DataWorks中進行資料建模、資料開發或使用營運中心周期性調度任務,需先將已建立的資料來源或叢集綁定至資料開發(DataStudio)模組。綁定後,才可讀取資料來源或叢集中的資料,並進行相關開發操作。

  1. 您需根據後續要開發和調度的任務類型,提前建立好對應的資料來源或叢集。

    資料來源或叢集

    說明

    建立MaxCompute資料來源

    首次建立MaxCompute資料來源後,DataWorks會自動將資料來源綁定至資料開發(DataStudio),您無需按本文手動綁定。但後續建立的MaxCompute資料來源需要手動綁定至資料開發(DataStudio)。

    建立Hologres資料來源

    建立這些資料來源後,需要參照本文指導手動綁定。

    建立AnalyticDB for PostgreSQL資料來源

    建立AnalyticDB for MySQL3.0資料來源

    建立ClickHouse資料來源

    註冊E-MapReduce叢集至DataWorks

    註冊叢集後,DataWorks會將叢集綁定至資料開發(DataStudio),您無需按本文手動綁定。

    註冊CDH或CDP叢集至DataWorks

  2. 進入資料開發頁面。

    登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的資料開發與治理 > 資料開發,在下拉框中選擇對應工作空間後單擊進入資料開發

  3. 在左側導覽列單擊資料來源,進入資料來源或叢集綁定頁面。

    若左側導覽列未顯示資料來源模組,則您需進入個人設定頁面,設定該模組顯示至左側導覽列中。操作詳情請參見模組管理

  4. 綁定資料來源或叢集。

    資料來源頁面,您可通過名稱搜尋找到目標資料來源或叢集進行綁定操作。綁定後,便可基於資料來源的串連資訊讀取該資料來源的資料,進行相關開發操作。

    說明

    當資料來源資訊發生變更時,若當前介面資料更新不及時,請重新整理當前頁面更新快取資料。

    image.png

    • 部分情境可能導致資料來源或叢集無法綁定至DataStudio(資料開發):

      • 部分資料來源或叢集是否可在DataStudio綁定,與資料來源或叢集的配置有關。例如,不支援在DataStudio綁定AccessKey及AccessSecret模式建立的資料來源。更多綁定限制,請參見產品綁定介面提示說明。

      • 資料來源缺失開發環境或生產環境。

      說明

      不同資料來源或叢集無法綁定至DataStudio(資料開發)的原因存在差異,平台會自動展示不支援綁定的原因,您可基於具體原因進行排查處理。

    • 當前僅支援綁定MaxCompute、E-MapReduce、Hologres、AnalyticDB for MySQL、ClickHouse、CDH/CDP、AnalyticDB for PostgreSQL至DataStudio(資料開發)。

    • 不同DataWorks版本,支援繫結資料源或叢集類型及數量限制存在差異。詳情請參見DataWorks各版本支援的功能詳情

入門教程

您可以參考資料開發入門,快速瞭解並掌握資料開發的基本操作及開發流程,詳情請參見資料開發入門

支援的節點類型

DataWorks的資料開發(DataStudio)模組提供了多種類型節點,同時,多種類型節點支援週期性任務調度,您可基於業務需要選擇合適的節點進行相關開發操作。DataWorks支援的節點合集,詳情請參見DataWorks節點合集

附錄:資料開發相關概念

  • 任務開發相關。

    概念

    描述

    解決方案

    商務程序的集合。您可將一類商務程序劃分為一個解決方案進行統籌管理。一個商務程序可被多個解決方案複用。進行資料開發時,其他使用者可在其它解決方案中,直接編輯您解決方案中引用的商務程序,進行協同開發。

    商務程序

    面向某一特定業務需求的任務、表、資源、函數的集合,業務的抽象實體。該類商務程序中的任務可按計劃定時觸發運行。

    手動商務程序

    面向某一特定業務需求的任務、表、資源、函數的集合。

    手動商務程序與商務程序的區別為:手動商務程序中的任務需手動觸發運行,而商務程序中的任務是按計劃來定時觸發運行。

    DAG

    英文Directed Acyclic Graph的縮寫,即有向非循環圖。用於展示節點及其依賴關係。在資料開發(DataStudio)中,商務程序下的所有任務會展示在同一個DAG中,方便您進行任務開發及依賴關係配置。

    任務

    任務是DataWorks的基本執行單元。DataWorks根據任務間的依賴關係依次執行各個任務。

    節點

    節點用於指代DAG中的一個任務。DataWorks根據節點間的依賴關係依次運行各個節點。

  • 任務調度相關。

    概念

    描述

    依賴關係

    任務間通過依賴關係定義任務的運行順序。如果節點A運行後,節點B才能運行,我們稱A是B的上遊依賴,或者B依賴A。在DAG中,依賴關係用節點間的箭頭表示。

    輸出名

    用於區分本節點與其他節點的標識符。輸出名全域唯一,一個節點可包含多個輸出名。DataWorks通過輸出名設定節點調度依賴關係。

    輸出表名

    輸出表名建議配置為當前任務的產出表,正確填寫輸出表名可以方便下遊設定依賴時確認資料是否來自期望的上遊表。自動解析產生輸出表名時不建議手動修改,輸出表名僅作為標識,修改輸出表名不會影響SQL指令碼實際產出的表名,實際產出表名以SQL邏輯為準。

    說明

    節點的輸出名需要全域唯一,而輸出表名無此限制。

    調度資源群組

    指用於任務調度的資源群組。資源群組介紹詳情請參見DataWorks資源群組概述

    調度參數

    調度參數是代碼中用於調度運行時動態取值的變數。代碼在重複運行時若希望擷取到運行環境的一些資訊,例如日期、時間等,可根據DataWorks調度系統的調度參數定義,動態為代碼中的變數賦值。

    業務日期

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

    定時時間

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