發布模型
DataWorks中的邏輯模型是資料設計的藍圖。發布模型可將邏輯模型物化為MaxCompute、Hologres等物理引擎中的物理表或視圖,用於後續的資料開發與分析。
限制條件
發布模型前,需滿足以下條件:
-
目標引擎:支援發布至 MaxCompute、Hologres、EMR Hive、CDH、MySQL 引擎。
-
發布類型:
-
發布為視圖或物化視圖時,目標引擎僅支援 MaxCompute。
-
發布為物化視圖時,發布模式僅支援刪除重建。
-
-
環境:
-
簡單模式工作空間:僅支援發布至生產環境。
-
標準模式工作空間:支援發布至開發或生產環境。
-
-
資源群組:
-
當目標引擎為EMR Hive或 CDH 時,必須指定獨享調度資源群組或Serverless資源群組執行發布任務。
-
發布並物化模型
維度資料表、明細表、匯總表、應用表可直接發布物化至建立的資料來源執行個體中,用於後續計算引擎進行資料開發、資料分析等。當前支援將表直接發布物化至MaxCompute、Hologres、EMR Hive、CDH、MySQL引擎。
-
發布模型。
模型建立完成後,您可單擊表詳情頁頂部功能表列的
表徵圖,在彈出的發布對話方塊中配置如下關鍵參數。在發布對話方塊中,除上述參數外,還需配置資料來源名稱(選擇具體的資料來源執行個體)和發布備忘(填寫本次發布的說明資訊)。參數
描述
發布類型
設定模型物化的形態。
-
物理表:在目標引擎中建立一張物理表。
-
視圖:在目標引擎中建立一個視圖,僅支援MaxCompute資料來源類型。
-
物化視圖:在目標引擎中建立一個物化視圖,僅支援MaxCompute資料來源類型。本質是一種預計算,即把某些耗時的操作(例如JOIN、AGGREGATE)的結果儲存下來,以便在查詢時直接複用,從而避免這些耗時的操作,最終達到加速查詢的目的。更多介紹詳情請參見物化視圖操作。
數據源類型
選擇資料存放區的引擎,目前可選如下幾類:MaxCompute、EMR Hive、Hologres、CDH、MySQL。
生效環境
可選擇發布至開發或生產環境。
-
如果您使用的是簡單模式的DataWorks工作空間,則僅支援發行資料表到生產環境。
-
如果您使用的是標準模式的DataWorks工作空間,則支援發行資料表到生產環境或開發環境。
發布模式
-
定義模型發布到目標引擎的方式。
-
增量發布:僅將當前模型的變更部分更新至目標引擎。建議對發行的模型使用此模式,以保留歷史資料並減少對線上業務的影響。
-
刪除重建:先刪除目標引擎中已存在的同名模型,然後重新建立。注意:此操作將刪除並重建表,導致歷史資料丟失。
首次發布時,兩種模式效果相同。
-
自動落標
設定模型發布後,是否自動產生品質規則。詳情參見資料落標。
-
是:發布生產環境成功後,針對主鍵、非空及關聯標準代碼的欄位自動產生品質規則。
-
否:不自動產生品質規則。
資源組
選擇模型表物化為E-MapReduce或CDH的物理表時,資源群組必填。請確保所選資源群組與資料來源之間的網路連通。
說明-
發布E-MapReduce或CDH的物理表僅支援使用獨享調度資源群組。
-
如果您沒有合適的獨享調度資源群組,則可參考使用獨享調度資源群組建立。
DDL
DataWorks根據模型配置自動為您產生發布為物化視圖的SQL語句。由於SELECT語句必須執行成功此處發布才會成功,因此您需手動修改
AS SELECT語句為可執行檔SQL語句。說明-
僅當選擇發布模型為物化視圖時,需配置該參數。
-
物化視圖的DDL操作,詳情請參見物化視圖操作。
-
-
配置完成後單擊發布,系統會將模型發布至對應的開發或生產環境,並物化至所選引擎。
-
支援在發布對話方塊查看當前發布進度及相關日誌
-
支援重複執行發佈動作將模型發布至不同的環境中。
-
-
可選:發布完成後,您可單擊表詳情頁頂部功能表列的
表徵圖,查看最近一次發佈動作的發布結果以及發布的詳細資料。其中,發布狀態包含發布成功、發布失敗、發布中三種狀態。發布成功的日誌如下圖所示。
2025-12-22 13:56:44 INFO – success to submit task to execute script, requestId is 480ead48371568e2ad85dc6ce3b68e60, taskCode is xxx 2025-12-22 13:56:47 INFO – success to execute script: CREATE TABLE IF NOT EXISTS own_yunwan.dim_ec_pub_region_df ( id STRING COMMENT '行政地區id', name STRING COMMENT '行政地區名稱', level INT COMMENT '行政地區等級,1: 國家;2:州/省;3: 城市;4:區/縣;', country_id STRING COMMENT '國家id', country_name STRING COMMENT '國家名稱', province_id STRING COMMENT '州/省 id', province_name STRING COMMENT '州/省 名稱', city_id STRING COMMENT '城市id', city_name STRING COMMENT '城市名稱', district_id STRING COMMENT '區/縣 id', district_name STRING COMMENT '區/縣 名稱', ds STRING COMMENT '業務日期, yyyymmdd' ) COMMENT '地理行政地區維度資料表' LIFECYCLE 1000 2025-12-22 13:56:47 INFO – finish and success to execute all script 2025-12-22 13:56:50 INFO – end and success to deploy job說明-
當發布狀態為發布失敗時,您需要根據具體的報錯資訊儘快定位原因並處理。
-
當發布日誌對話方塊顯示暫無發布日誌。表示模型從未被發布過。
-
-
查看發布記錄
模型發布成功後,您可進入模型的編輯頁面,單擊右側導覽列的發布記錄,查看模型歷史發布版本的詳情。在發布記錄面板中,可查看模型
dim_ec_pub_region_df的發布歷史,包含發布時間、發布人、模型版本和生效環境等列。目前記錄顯示該模型 V1 版本發行至開發環境。
產生 ETL 代碼架構(模型開發)
在DataWorks智能資料建模中,可使用模型開發功能,為發行的模型表(如維度資料表、明細表)產生ETL代碼架構。
模型開發功能僅支援為發布至MaxCompute和EMR Hive計算引擎的模型表產生代碼。
-
在DataWorks智能資料建模中,雙擊發行的模型表,進入表詳情頁面。
-
單擊操作欄的模型開發。
-
在彈出的模型開發對話方塊中,選擇新建 DataStudio 節點或綁定 DataStudio 節點,配置相關參數後單擊確定。
-
選擇新建 DataStudio 節點
系統將自動建立DataStudio節點,並根據表名自動填滿節點名稱。在彈出的模型開發對話方塊中,需配置目標工作空間、節點類型(如 ODPS SQL)及節點名稱等參數。
-
若模型表發布至MaxCompute引擎,則建立ODPS SQL節點。
-
若模型表發布至EMR Hive引擎,則建立EMR Hive節點。
確認配置資訊後,單擊去 DataStudio。系統會在資料開發自動產生建立節點的彈窗,點擊確定即可建立節點並產生ETL代碼。
-
-
選擇綁定 DataStudio 節點
在彈出的模型開發對話方塊中,配置目標工作空間、節點類型(如 ODPS SQL)及節點名稱(ID),單擊確定。
將代碼架構關聯至一個已有的、相同引擎類型的DataStudio節點。綁定成功後,可單擊節點名稱跳轉至對應的節點頁面繼續開發。
-
如果需要為同一個模型表關聯多個節點,可再次單擊模型開發進行綁定。
計費說明
發布模型功能本身不收費。物化過程中涉及的計算和儲存資源將產生費用:
目標引擎費用:模型物化後,在目標引擎(如MaxCompute、Hologres)中佔用的儲存資源和後續的計算資源,按對應產品的計費規則收費。