CDO星球
Chat?GPT研習社
小橋甄選
在上一集(開篇:從零建立賦能業務的數據中心「邏輯框架」)中,我們從業務場景出發,定義業務問題后,形成了具體的數據庫賦能業務的框架。接下來的這一集,就是把此前的目標,轉為數據需求。那如何把業務問題轉為數據需求?那就是今天要討論的數據建模。
本文通過黃金思維圈(what-why-how)的邏輯來呈現。
(為了與數據分析場景中建模的概念區分,本文的數據建模可以理解為 數據庫建模。)
數據建模是什么?
數據建模是一個過程,是對業務現實各類數據進行抽象組織后,確定數據庫范圍、數據組織形式及實現數據庫開發的過程;這個過程中,需要對具體業務場景進行分析形成業務模型,基于此抽象出劃分數據域的概念模型,基于此明確實體以及各實體之間關系,形成邏輯模型,最后形成用于建立數據庫實體的物理模型。
簡單來說,數據建模是把業務現實映射到數字邏輯的過程,是從具體到抽象,再到具體的過程。
為什么要建模?
數據建模其實是一個邏輯嚴謹的過程。為什么不能直接把做報表的數據源導入數據庫就交差,而是要進行復雜的建模?
幫助梳理業務流程:數據中心是服務業務,其數據邏輯也應該反映業務現實,通過數據建模可以確保這種映射關系的有效性
建立全方位的數據視角,統一業務邏輯:之所以叫數據中心,就是因為服務的不止是一個部門,而是把多個業務單元的數據匯總,而背后是打通業務邏輯,所以需要建立全方位的數據視角來完成這件事,否則容易陷入到無盡的臨時需求里。
減少建設過程中的“不確定”:在做決策過程中,經常會遇到這個數據要不要?要不要新建某個表?的問題 。數據建模的過程就是解決問題的框架,
確保最終落地的數據中心能支撐業務發展
如何建模?
建立業務模型
業務場景既是數據工作的起點,又是數據工作最終賦能的落地點。所以數據建模的第一步就是要梳理業務流程,明確業務目標,進而抽象出公司整體的業務模型。這一步的目的是為后面步驟提供明確的業務邏輯。
建立概念模型
將業務場景抽象成概念模型
建立邏輯模型
將概念落地,建立具體的表間邏輯關系
建立物理模型
按數據庫語法建立物理模型,即可形成數據庫
業務模型
業務模型是對業務層面的分解和程序化,為了達到這個目的需要先對業務流程進行梳理。那要如何做?可以借助點線面的思考邏輯。
業務流程
此次案例中,雖然服務的對象是用戶運營部門,產品部門,但是還是從公司層面的核心業務出發,才能窺探全局。所以借助零售行業的人貨場模型,對業務流程進行梳理,產出下圖。
接下來可以參考:基于業務流程抽象出業務模型。
明確目標:分析主題與指標定義
開篇:從零建立賦能業務的數據中心「邏輯框架」 從業務流程的梳理到業務模型的建立,是為了深入理解業務。回到建立數據庫模型的場景中,在了解業務階段,還需要進一步明確此次建模的目的:分析主題與指標定義。
用戶分析
目標是通過建立「RFM模型」對人群進行分層,并形成不同人群的營銷策略。
RFM建模邏輯:
數據清洗
RFM閾值定義
用戶RFM指標計算
打上RFM標簽
分組統計
指標定義:產品分析
明確需求是要對新品做「存銷分析」,即綜合庫存和銷售情況來判斷新品表現,進而調整生產及庫存計劃。
分析邏輯:指標定義:概念模型
在上一階段,我們從業務場景中明確了分析主題,接下來就需要圍繞著分析主題進行概念模型建模。概念數據模型是數據庫概念和實體之間的關系的有組織的視圖。創建概念數據模型的目的是建立實體,實體的屬性和關系。
為什么需要概念模型?
概念模型的一個重要作用的就是劃分數據庫范圍,也就是回答數據庫項目要做到什么程度的問題。概念模型好比是中學學習物理時的極限思維,抓主要矛盾:光滑的平面、真空自由落體等,這些條件在現實是很難實現,但是可以幫助解決物理問題。同樣,在數據庫建模中,概念模型著重表達清楚實體和實體之間的關系,包括描述重要的屬性,而選擇忽略干擾判斷的過多細節。
如何建立概念模型?
抽取關鍵業務概念,并將之抽象化。
將業務概念分組,按照業務主線聚合類似的分組概念。
理清分組概念之間的關聯,形成完整的領域概念模型。
借用ER實體模型工具來表達實體間的關系
主題域/數據域
第三步中,對業務進行領域劃分,形成主題域,或者說數據域。劃分方法主要有:按系統分、按業務部門分、按業務分析需求劃分,這里,我們的目的是建立分析性數據庫賦能業務,所以我們選擇按業務分析需求來劃分。下表是基于業務場景劃分的數據域:
ER實體模型
定義數據域后,則要進一步明確域內不同數據之間的關系(表間關系),為了更好地描述它們,可以借助ER實體模型工具,也就是步驟中的第四步。
什么是ER
數據系統中,將事物抽象為實體(Entity)、關系()、屬性來表示數據關聯和事物的描述,這種對數據的抽象建模通常被稱為ER實體關系模型
實體:參與到業務過程中的客觀存在,比如會員、訂單、商品
屬性:對實體的描述,比如名稱、尺寸
關系:實體與實體之間的聯系,比如會員購買商品
實體與實體之間的對應關系:
邏輯模型
將領域模型的概念實體及實體之間的關系進行數據庫層次的邏輯化。
前面基于業務流程,完成建立了業務模型。對業務行為產生的數據進行抽象,并基于不同主題進行劃分后,形成概念模型。
至此,還只是停留在對業務的梳理階段,在新建數據庫實體之前,還需要進入到邏輯建模階段:需要包含所有的邏輯表、字段、關系和約束;需要具體定義在概念模型中忽略的細節(比如子類關系、關聯屬性),也就是抽象到具體的過程。
那邏輯模型要如何實現?可以借助工具:維度建模。
維度建模
維度建模是專門用于分析型數據庫、數據倉庫、數據集市建模的方法。
什么是維度建模?
為了更好地理解,我們先回歸到數據分析的底層邏輯:報表分析 = 分類維度 x 事實指標。
比如業務提數據需求說:要按月看不同品類的銷售額。
在這個需求中,業務要看的事實指標是 銷售額,其余描述該指標的“形容詞”就是分類維度:按月(時間日期分類)、不同品類(商品品類分類)。
更直觀地從Excel透視表來看,行、列標簽就是需要透視的維度,表格中的值則是按公式計算的事實指標:
基于該分析邏輯,從應用分析層反推到數據庫層面,就是維度建模:把表分為維度表與事實表。在具體使用時,只需要從維度表中選擇需要透視(分析)的維度,再從事實表計算指標即可完成報表分析。
維度表
規范來說,什么是維度表?就是對分析主題所屬類型的描述,比如銷售流程(會員A在2022年1月1日付費200元購買了1件產品B)就是以銷售為主題進行分析,可以從中提取的維度:時間維度(2022年1月1日)、商品維度(產品B),也就是在excel表中需要透視的維度有時間、品類。
事實表
什么是事實表?就是對分析主題的度量,上述銷售流程的例子中,200元、1件就是事實信息。在業務活動中,每個流程都會產生一個事實表,涉及多個實體,而上述例子涉及的實體就是會員、產品。
維度建模的分類
維度模型主要分為星型模型、雪花模型。
很多情況下,我們來學習數據庫理論的過程中,經常看到設計范式的概念,在確定維度模型前,我們先來看看什么是數據庫的設計范式。
數據庫設計范式
專業的定義:數據庫的設計范式是數據庫設計所需要滿足的規范,數據庫的規范化是優化表的結構和優化把數據組織到表中的方式,這樣使數據更明確,更簡潔。
簡單的說,范式是為了消除重復數據減少冗余數據,從而讓數據庫內的數據更好的組織。對數據分析師來說,我們只需要關注范式的前三個層級:
第一范式1NF
簡單的說,第一范式就是每一個屬性都不可再分,不符合第一范式則不能稱為關系數據庫。比如不符合1NF的表:我們看到商品字段下把多個屬性放在了一起,因此不符合第一范式。
我們把它修改成符合1NF:把商品里的數據拆開成品類、品牌、名稱、型號、規格。這樣每個屬性都不能再拆,因此符合1NF。
第二范式2NF
更深一層,到2NF就需要考慮主鍵,簡單來說就是考慮分表的問題。1NF案例中的表是大寬表,把所有信息都放在了一起,這種表在實際業務中Excel里非常常見,有利于直接透視分析,但是問題也同樣明顯:就是對于數據量稍大的表格就跑不動了,到數據庫里是同樣的道理,我們需要對它按下圖進行拆表,也就符合2NF了。
第三范式3NF
到這一層級,專業地說就是要消除數據庫中關鍵字之間的依賴關系。通俗地講,就是對2NF進一步拆表。2NF案例中的商品表中,我們發現品類ID和商品表混在了一起,需要拆成下圖的樣子,就是3NF。當然,如果要更嚴格一些,就需要把品牌單獨出來做一個品牌表(字段:品牌ID,品牌名稱)。
星型模型與雪花模型
簡單了解完設計范式后,就可以來選擇維度模型。
星型模型
雪花模型
星型模型與雪花模型是最常見的維度模型,它們之間的區別在于雪花模型是符合3NF,而星型模型不符合3NF,數據是冗余的,但也正是因為星型模型數據的冗余所以很多統計查詢不需要做外部的連接,因此一般情況下效率比雪花型模型要高。
從實現來說,星型結構不用考慮很多正規化的因素,設計與實現都比較簡單,所以實際運用中星型模型使用更多,也更有效率。所以我們接下來也會使用星型模型作為邏輯模型的呈現。
物理模型
物理模型是最終用來建立數據庫實際對象的,主要解決邏輯模型針對不同關系型數據庫的物理化以及性能等一些具體的技術問題。在進入敲代碼階段,將邏輯模型轉為SQL SERVER的數據庫實體之前,可以借助物理模型幫助實現落地。
@朋友們 嘮點知心話
AI的風口已來,不管你抓與不抓,它都在哪里。
只不過,有的人抓住了,從此人生走向輝煌。
AI會重新定義未來工作方式,會淘汰很多職業。
最危險的是對AIGC沒有感知的那些人。
未來淘汰你的不是AI,而是懂AI的人。
從現在開始,每個聰明的人都將成為AI的革新者和躬身入局者。
相信每個有智慧的人都會有正確的判斷。
讓我們一起成為AI時代的掌舵者吧!
本人從事多年數據與數字化相關的工作,也非常喜歡研究商業趨勢與商業模式,自運營CDO研習社以來結識了大量行業人脈和資源。前幾天,一位數據領域的前輩,也是一位數據公司的董事長電話暢談,因為一直關注CDO研習社非常認可其中的內容價值,特意鼓勵我投身知識服務領域。還有一位粉絲是某研究院的秘書長,特意加微信語音暢聊近半小時,對CDO研習社的內容非常認可,也表達了對數字化、AI、區塊鏈領域深入學習關注的想法。
經過慎重考慮,我決定全職 all in 知識服務,專注AI、數字化付費社群經營,從社群到生態,為職場小白、數據高管、業務CXO等人群打造優質內容服務。
目前,我已開通CDO研習社、AI研習社知識星球,并每日更新最具價值的內容。兩個星球定位不同:CDO研習社主要關注數字化轉型、數據中臺、數據治理知識的沉淀,包括解決方案/行業報告/PPT課件/電子書等。AI研習社主要關注AIGC前沿知識、ChatGPT的場景應用與變現。會不定期有各種福利活動。內容會有重疊,為了節省大家的小金庫,粉絲們不用重復加入。
為了迎接更多星友共同成長,我特地設置了100張AI研習社和10張CDO研習社的優惠券給大家(目前馬上搶完,應眾多粉絲要求再放出100張,送完為止,年內不再放優惠券)。目前星球正進行AIGC的贈書抽獎活動,歡迎積極參與哦,五一之后還會送出一本價值799元的《2023版中國司庫報告》紙質完整版。
用
心
推
薦
加入CDO星球
或ChatGPT研習社領取資料
*請認真填寫需求信息,我們會在24小時內與您取得聯系。