全部產品
Search
文件中心

DataWorks:組件管理

更新時間:Jan 23, 2026

組件用於將SQL過程抽象為一個SQL模板,實現SQL代碼的複用。使用組件前,您需先根據業務需要建立符合業務加工過程的組件。本文為您介紹在資料開發(Data Studio)的組件管理介面,如何建立組件,並進行組件的分享、升級、查看組件引用記錄等管理操作。

組件介紹

在MaxCompute實際業務實踐中,存在大量類似的SQL代碼過程,過程中輸入表和輸出表的結構一致或結構類型相容,僅名稱不同。此時,組件的開發人員可將該SQL過程抽象為一個SQL元件節點,將可變的輸入表抽象為輸入參數,可變的輸出表抽象為輸出參數,實現SQL代碼的複用。

後續在使用SQL元件節點時,只需從程式碼群組件列表中選擇和自己的業務處理過程類似的組件,並為該組件配置自己業務中特定的輸入表和輸出表,無需再次編輯代碼,便可直接產生新的SQL元件節點,極大提升了開發效率,避免重複開發。SQL元件節點產生後的發布、調度操作,與普通SQL節點的操作方式相同。

說明

當前僅MaxCompute計算引擎支援使用SQL組件。

適用範圍

  • 版本限制:僅支援DataWorks標準版及以上版本。

  • 許可權限制:具備DataWorks工作空間的開發許可權,才可建立並使用組件。授權詳情請參見空間級模組許可權管控

組件類型

組件分為專案組件及公用組件,組件開發人員(即建立組件的使用者)在建立組件時可自行定義。

  • 專案組件管理:組件發布後,預設僅該DataWorks工作空間的使用者可使用。若您希望使用該類組件,則需成為此工作空間的成員,詳情請參見空間級模組許可權管控

  • 公用組件管理:組件的開發人員可進入公用組件管理地區,將具有全域通用性的組件發布到整個租戶內,發布後,租戶內所有使用者均可使用該公用組件。

進入組件管理

  1. 進入DataWorks工作空間列表頁,在頂部切換至目標地區,找到目標工作空間,單擊操作列的快速進入 > Data Studio,進入Data Studio。

  2. 在左側導覽列單擊image,進入組件管理。

組件使用流程

步驟一:定義組件

組件開發人員可通過資料開發(Data Studio)的組件管理介面,定義通用邏輯的過程體代碼及輸入輸出參數,通過編寫抽象的SQL加工過程,將指定的輸入表通過輸入參數進行加工處理,產生有業務價值的輸出表(即輸出參數)。代碼中輸入參數和輸出參數的格式為@@{參數名}

  1. 在專案組件管理地區單擊image,選擇建立SQL組件,您也可以先選擇建立目錄,規劃組件目錄後,再右鍵目錄,選擇建立SQL組件

    說明
    • 本工作空間成員建立的組件在專案組件管理下。

    • 組件公開後會在公用組件管理下。

  2. 配置組件資訊。

    1. 配置組件過程體。

      過程體即為組件的實現代碼。通過編寫抽象的SQL代碼(即SQL加工過程),使用@@{參數名}格式,引入輸入參數和輸出參數,將指定的輸入表通過輸入參數進行加工處理,產生有業務價值的輸出表。後續使用組件時,只需配置不同的輸入參數和輸出參數,便可通過該代碼模板產生正確可啟動並執行SQL代碼。

    2. 配置輸入參數。

      單擊組件編輯頁面右側的參數配置,單擊輸入參數右側的image,定義過程體的輸入參數,支援TableString類型,即過程體的輸入參數為某表或某字串。

      說明

      您也可以單擊組件編輯頁面頂部的輸入輸出參數解析,使用自動解析功能從代碼中自動識別輸入和輸出參數,然後再根據下表配置相關參數。

      Table

      使用情境

      若使用組件加工源表資料時,輸出結果類別單一恒定,則請使用該類型。

      配置參數及說明

      • 關鍵參數參數定義

      • 配置說明:用於將輸入表的結構進行文本化呈現,其中可包含表的欄位、欄位類型及欄位含義等內容。通過該形式,告知組件使用者,在使用組件時需為輸入參數配置與輸入表結構參數個數相同,類型相容的輸入表。防止配置的輸入表和組件定義的輸入表欄位個數不一致、欄位類型不相容,導致組件運行時出錯。

        說明

        該定義僅為參考,為您提供輸出參數配置的協助提示,並不會即時強制檢查。

      • 配置樣本

        參數定義的格式建議為:

        欄位1名 欄位1類型 欄位1注釋 
        欄位2名 欄位2類型 欄位2注釋 
        ……
        欄位n名 欄位n類型 欄位n注釋

        配置樣本:

        area_id STRING '地區id' 
        city_id STRING '城市id' 
        order_amt DOUBLE '訂單金額' 

      String

      使用情境

      若使用組件加工源表資料時,需通過變數控制輸入參數的取值,則請使用該類型。

      配置參數及說明

      • 關鍵參數預設值

      • 配置說明:該類型支援設定參數預設值,設定後,組件使用過程中預設使用所配置的參數預設值。

      • 配置樣本

        • 情境一:組件過程的輸出表需輸出每個地區前N個城市的銷售額,則可設定N為該組件的輸入參數,N的取值可通過字串型別參數進行控制。

        • 情境二:組件過程的輸出表需輸出省份的銷售總額,可設定一個省份字串參數作為該組件的輸入參數,通過指定不同的省份,擷取相應省份的銷售資料。

    3. 配置輸出參數。

      定義過程體的輸出參數,即組件最終產出表。為便於組件使用者使用組件,您可在輸出參數配置中,填寫使用該組件後輸出表的表結構,供組件使用者參考。

      單擊組件編輯頁面右側的參數配置,單擊輸出參數右側的image,定義過程體的輸出參數。

      說明

      您也可以單擊組件編輯頁面頂部的輸入輸出參數解析,使用自動解析功能從代碼中自動識別輸入和輸出參數,然後再根據下表配置相關參數。

      • 關鍵參數:參數定義。

      • 配置說明:用於將輸出表的結構進行文本化呈現,其中可包含表的欄位、欄位類型及欄位含義等內容。通過該形式,告知組件使用者,在使用組件時需為輸出參數配置與輸出表結構參數個數相同,類型相容的輸出表。防止配置的輸出表和組件定義的輸出表欄位個數不一致、欄位類型不相容,導致組件運行時出錯。

        說明

        該定義僅為參考,為您提供輸出參數配置的協助提示,並不會即時強制檢查。

      • 配置樣本

        參數定義的格式建議為:

        欄位1名 欄位1類型 欄位1注釋 
        欄位2名 欄位2類型 欄位2注釋 
        ……
        欄位n名 欄位n類型 欄位n注釋

        除此之外,輸出參數定義還可根據您所需的處理結果,添加匯總輸出結果欄位。例如,排名、總收入等。例如:

        area_id STRING '地區id' 
        city_id STRING '城市id' 
        order_amt DOUBLE '訂單金額'
        rank BIGINT '排名'
  3. 單擊儲存提交

    組件建立完成後,可在SQL元件節點中引用,協助您快速產生業務所需的目標表。使用詳情請參見步驟二:引用組件

  4. (可選)您可以單擊公開組件,將具有全域通用性的組件發布到整個租戶內(在公用組件管理地區展示),分享組件並發布後,租戶內所有使用者均可使用該組件。

步驟二:引用組件

你可以通過如下方式引用組件。

在資料開發SQL元件節點中引用

組件使用者可以在資料開發介面,通過建立SQL元件節點引用所需組件,替換組件中的輸入與輸出參數,實現代碼複用。

  1. 在Data Studio左側導覽列單擊image,進入資料開發。

  2. 專案目錄中根據業務需要,規劃建立SQL元件節點的位置後,右鍵目錄或單擊image,選擇建立節點 > MaxCompute > SQL元件節點,自訂SQL元件節點名稱。

  3. 在SQL元件節點編輯頁面,單擊右側組件設定,然後選擇組件代碼

  4. 選擇組件代碼後,組件代碼將自動填滿到SQL組件編輯頁,您可以在組件設定中,定義各參數取值。

從專案組件管理中引用

組件使用者可以在組件管理介面,找到待引用的組件,然後通過直接引用建立SQL元件節點,替換組件中的輸入與輸出參數,實現代碼複用。

  1. 在Data Studio左側導覽列單擊image,進入組件管理。

  2. 專案組件管理中找到目標組件後右鍵,選擇引用組件

  3. 根據頁面引導,選擇SQL元件節點建立的位置以及SQL組件的名稱。

  4. 建立成功後,組件代碼將自動填滿到SQL組件編輯頁,您可以在組件設定中,定義各參數取值。

從公用組件管理中引用

組件使用者可以在組件管理介面,找到其他租戶公開的組件,然後通過直接引用建立SQL元件節點,替換組件中的輸入與輸出參數,實現代碼複用。

  1. 在Data Studio左側導覽列單擊image,進入組件管理。

  2. 公用組件管理中找到目標組件後,單擊引用

  3. 根據頁面引導,選擇SQL元件節點建立的位置以及SQL組件的名稱。

  4. 建立成功後,組件代碼將自動填滿到SQL組件編輯頁,您可以在組件設定中,定義各參數取值。

升級組件

升級操作:組件開發人員

組件開發人員可根據需要編輯組件代碼及相關參數配置,編輯完成後儲存提交即可升級為新版本組件,您可在版本處查看組件各個版本的詳情。

引用組件版本升級:組件使用者

組件升級後,若您的SQL元件節點引用了該組件,則引用時可選擇是否使用該組件已升級的最新版本。

  • 若無需使用,則繼續引用原有版本。

  • 若使用,需確認新版本組件對於SQL元件節點的參數配置是否繼續生效,並根據新版本組件的說明進行相關調整,編輯完成後進行提交發布。提交發布流程同普通SQL節點。

升級情境樣本

組件開發人員建立了V1版本的SQL組件,組件使用者使用了該V1版本組件。隨後,組件開發人員將組件升級為V2版本。組件使用者在使用過程中發現該組件已存在最新版本V2,開啟組件,查看不同版本詳情,對比後發現新版本組件業務效果更好,然後更新升級到最新的組件版本使用。

查看組件引用記錄

您可以在組件編輯頁右側單擊引用記錄,查看哪些節點引用了當前組件,用於組件變更時提前預估影響。

其他動作

複製組件

您可通過複製功能,快速複製現有組件以建立新的組件。複製內容包括組件代碼參數設定調試配置指令碼參數

  1. 在左側專案組件管理中,按右鍵需要複製的組件名稱,在快顯功能表中選擇複製

  2. 在彈窗中修改組件名稱路徑(或保留預設值),單擊確認開始複製。

  3. 複製完成後,您可以在專案組件管理中查看新產生的組件。

版本管理

系統支援通過版本管理功能將組件還原到指定的歷史版本,同時還提供版本查看與對比功能,方便您分析差異並作出調整。

  1. 在左側專案組件管理中,雙擊需要查看並進行版本管理的組件名稱,進入組件編輯頁。

  2. 單擊組件編輯頁右側的版本,在版本頁面查看和管理開發記錄發布記錄資訊。

    • 查看版本

      1. 您可以在開發記錄發布記錄頁簽中,找到需要查看的組件版本。

      2. 單擊操作欄中的查看,進入詳情頁查看組件代碼內容以及調度配置資訊。

    • 對比版本

      您可以在開發記錄發布記錄頁簽中,對不同版本的組件進行對比。下面以開發記錄為例,為您示範對比操作。

      • 開發或發布環境對比:在開發記錄頁簽中,勾選兩個版本,單擊上方的選擇對比按鈕,即可對比不同版本的組件代碼內容和調度配置資訊。

      • 開發與發布環境對比

        1. 開發記錄頁簽中,定位到組件的某個版本。

        2. 單擊操作欄中的對比按鈕,在詳情頁中選擇與發布記錄中的某個版本進行對比。

    • 還原版本

      僅支援將開發記錄中的組件還原到指定的歷史版本。您可在開發記錄頁簽中找到目標版本,單擊操作欄中的還原按鈕,即可將該組件資訊還原至目標版本。