層級維度邏輯表是具有層級結構關係的維度資料表。例如時間層級維度邏輯表,包含日、周、月、季、年等日期資料。本文為您介紹如何建立並配置層級維度邏輯表。
層級維度資料表介紹
層級維度資料表對應層級對象。具備以下特徵:
資料量小。
資料(行)在業務上有上下級關係。例如,地區(行政區劃)、企業組織架構、產品類目。國家、省份、城市,城市是一條條獨立的記錄,而國家->省份->城市之間有上下級的從屬關係;企業組織架構中的事業群->事業部->一級部門->二級部門,產品類目中食品->休閑零食->乾果等類目關係。
案例說明
資料模式
通常在業務系統中,具備上下級從屬關係的資料,一般使用以下資料模式。
欄位名稱 | 欄位說明 |
id | 當前層級ID。 |
name | 當前層級名稱。 |
parent_id | 父層級ID。 |
level | 層級。 |
資料舉例
業務系統中的region地區資料表。
id | name | parent_id | level |
1 | 中國 | Null | 0 |
21 | 華東大區 | 1 | 1 |
212 | 浙江省 | 21 | 2 |
2121 | 杭州市 | 212 | 3 |
21213 | 餘杭區 | 2121 | 4 |
通過Dataphin的region業務對象建立的層級維度資料表。
邏輯表名稱 | 業務對象 | 來源表 | 子層欄位 | 父層欄位 | 名稱欄位 | 層數 |
dim_region | region | ${xxx}.region | id | parent_id | name | 5 |
前提條件
已完成層級業務對象的建立。更多資訊,請參見建立並管理業務實體。
操作步驟
在Dataphin首頁的頂部功能表列中,選擇研發 > 資料研發。
在頂部功能表列中選擇專案(Dev-Prod模式還需要選擇環境)。
在左側導覽列中需選擇規範建模 > 維度邏輯表。
在右側維度邏輯表列表中,單擊
建立表徵圖。在建立維度邏輯表對話方塊中,配置參數。
參數
描述
業務對象
選擇層級對象。例如,
region業務對象。表類型
業務對象選擇層級對象,表類型為層級維度邏輯表,不支援修改。
資料板塊
預設為專案關聯的資料板塊,不支援修改。
主題域
預設為業務對象所在的主題域,不支援修改。
計算引擎
設定Dataphin執行個體為Hadoop計算引擎的租戶支援選擇計算引擎,包括Hive、Impala、Spark。
重要對應的計算引擎需要在開啟後,才可以支援進行選擇。更多資訊,請參見建立Hadoop計算源。
當計算引擎為TDH 6.x或TDH 9.3.x時,不支援配置此項。
計算引擎存在以下限制,詳情如下:
Hive:不可讀取儲存為Kudu格式的來源表。
Impala:可讀取儲存為Kudu格式的來源表,暫不支援將邏輯表格儲存體為Kudu。如果沒有Kudu格式的來源表,不建議使用。
Spark:Spark不可讀取儲存為Kudu格式的來源表。
資料時效
資料時效用於定義後續該層級維度邏輯表任務在生產環境的調度類型。層級維度邏輯表的資料時效預設為T+1(天任務)。
邏輯表名
Dataphin自動填滿邏輯表名。預設命名規則為
<資料板塊名稱>.dim_<業務對象名稱>。中文名稱
填寫維度邏輯表的中文名稱。例如,地區維度邏輯表。
命名規則如下:
不能超過128個字元。
支援任何字元。
描述資訊
填寫對層級維度邏輯表的簡單描述,1000個字元以內。
單擊確定。
在計算邏輯頁面,配置維度邏輯表的來來源資料與主鍵之間的映射關係。
參數
描述
欄位名稱
預設為業務過程的名稱,您也可以修改欄位名稱。例如,
region。命名規則如下:
不能超過128個字元。
支援任何字元。
資料類型
選擇層級邏輯表主鍵的資料類型。例如,
bigint。說明
填寫層級邏輯表主鍵的欄位說明。例如,
地區_主鍵ID。來源表
選擇層級維度資料來源。例如,
region地區資料表。層級數
配置層級維度層級數。例如,
5層。是否產生葉子維度資料表
選擇是否產生葉子維度資料表。葉子維度資料表是指該階層中的最底層或最細節的層次。例如,產品類目維度資料表的葉子維度資料表通常會包含具體的產品資訊,例如產品ID、產品名稱、價格、庫存、銷售數量等。
子層欄位、父層欄位
選擇來源表中表示子層和父層的資料欄位。例如,
region地區資料表中id(子層欄位)和parent_id(父層欄位)。欄位名稱
選擇來源表中展示層級維度資料表欄位名稱的資料欄位。例如,
region地區資料表中的name欄位。根節點定義
定義層級結構的最頂部節點對應的記錄。可以基於來源主表欄位定義根層級識別的SQL判斷條件。例如,
region地區資料表中的中國即為根節點,判斷條件可以為level = 0或parent_id is null。資料過濾條件
非必填,您可以對來源表欄位定義資料過濾條件。例如,過濾掉髒資料或已邏輯刪除的欄位。
說明僅可基於來源主表欄位,設定資料更新及擷取時間周期的判斷條件,即時間分區。
單擊儲存並下一步。
在調度&參數配置頁面,配置維度邏輯表的調度屬性、調度依賴、調度參數、回合組態。各配置說明如下:
調度屬性:用於定義維度邏輯表在生產環境的調度方式。您可以通過調度屬性,配置維度邏輯表的調度類型、調度周期、調度邏輯與執行等。配置說明,請參見配置邏輯表調度屬性。
調度依賴:用於定義邏輯表在調度任務中的節點。Dataphin通過各個節點的調度依賴的配置結果,有序地運行商務程序中各個節點,保障業務資料有效、適時地產出。配置說明,請參見配置邏輯表上遊依賴。
運行參數:參數配置是對代碼中所用的變數進行賦值,從而支援節點調度時,參數變數可以自動被替換為相應的變數值。在調度參數配置頁面,您可以對參數配置進行忽略或轉為全域變數的操作。配置說明,請參見邏輯表參數配置。
回合組態:您可以根據業務情境為該維度邏輯表配置任務級的運行逾時時間和任務運行失敗時的重跑策略,杜絕因計算任務長時間資源佔用造成資源浪費的同時提高計算任務啟動並執行可靠性。配置說明,請參見計算任務回合組態。
資源配置:您可以為當前邏輯表任務配置調度資源群組,邏輯表任務調度時將佔用該資源群組的資源配額。配置說明,請參見邏輯表資源配置。
完成層級維度邏輯表配置後,單擊儲存並提交。
提交時,Dataphin將進行任務的血緣解析及提交檢查。更多資訊,請參見規範建模任務提交說明。
後續步驟
如果專案的模式為Dev-Prod,則您需要發布邏輯表至生產環境。具體操作,請參見管理髮布任務。
邏輯表發布至生產環境後,您可在營運中心查看並營運邏輯表任務。具體操作,請參見營運中心。