柚子快報(bào)激活碼778899分享:【數(shù)據(jù)倉庫】數(shù)據(jù)倉庫層次化設(shè)計(jì)
柚子快報(bào)激活碼778899分享:【數(shù)據(jù)倉庫】數(shù)據(jù)倉庫層次化設(shè)計(jì)
一、基本概念
**1. RDS(RAW DATA STORES,原始數(shù)據(jù)存儲)**
RDS作為原始數(shù)據(jù)存儲層,用于存儲來自各種源頭的未經(jīng)處理的數(shù)據(jù)。這些數(shù)據(jù)可能來自企業(yè)內(nèi)部的業(yè)務(wù)系統(tǒng)、外部數(shù)據(jù)源或各種傳感器等。RDS確保原始數(shù)據(jù)的完整性和可訪問性,為后續(xù)的數(shù)據(jù)處理和分析提供原始素材。
**2. ODS(Operational Data Store,操作數(shù)據(jù)存儲)**
ODS(操作性數(shù)據(jù)),是數(shù)據(jù)倉庫架構(gòu)中的重要組成部分。它位于數(shù)據(jù)源系統(tǒng)和數(shù)據(jù)倉庫的數(shù)據(jù)集市之間,主要用于存儲從各個(gè)業(yè)務(wù)系統(tǒng)抽取的原始數(shù)據(jù)。作為數(shù)據(jù)庫到數(shù)據(jù)倉庫的一種過渡,ODS的數(shù)據(jù)結(jié)構(gòu)一般與數(shù)據(jù)來源保持一致,便于減少ETL的工作復(fù)雜性,而且ODS的數(shù)據(jù)周期一般比較短。ODS的數(shù)據(jù)最終流入DW。
ODS位于RDS之后,用于存儲從RDS中提取出來的、經(jīng)過初步整合的數(shù)據(jù)。ODS通常用于存儲來自多個(gè)操作型系統(tǒng)的數(shù)據(jù),如ERP、CRM等。它的主要作用是為數(shù)據(jù)倉庫提供結(jié)構(gòu)化、整合后的數(shù)據(jù),作為后續(xù)數(shù)據(jù)處理和分析的基礎(chǔ)。
ODS存儲的是當(dāng)前的數(shù)據(jù)情況,給使用者提供當(dāng)前的狀態(tài),提供即時(shí)性的、操作性的、集成的全體信息的需求。ODS作為數(shù)據(jù)庫到數(shù)據(jù)倉庫的一種過渡形式,能提供高性能的響應(yīng)時(shí)間。ODS中的數(shù)據(jù)是"實(shí)時(shí)值",而數(shù)據(jù)倉庫的數(shù)據(jù)卻是"歷史值"。
2.1?ODS的特點(diǎn)
ODS層的主要特點(diǎn)包括:
面向主題: 數(shù)據(jù)按照業(yè)務(wù)主題進(jìn)行組織粒度細(xì): 保留原始數(shù)據(jù)的細(xì)節(jié)級別實(shí)時(shí)性強(qiáng): 數(shù)據(jù)更新頻率較高,通常為準(zhǔn)實(shí)時(shí)或近實(shí)時(shí)數(shù)據(jù)冗余: 保留歷史數(shù)據(jù),支持?jǐn)?shù)據(jù)回溯
2.2?ODS系統(tǒng)的作用
一般在帶有ODS的系統(tǒng)體系結(jié)構(gòu)中,ODS都具備如下幾個(gè)作用:
1)
在業(yè)務(wù)系統(tǒng)和數(shù)據(jù)倉庫之間形成一個(gè)隔離層。?
2)
轉(zhuǎn)移一部分業(yè)務(wù)系統(tǒng)細(xì)節(jié)查詢的功能。在數(shù)據(jù)倉庫建立之前,大量的報(bào)表、分析是由業(yè)務(wù)系統(tǒng)直接支持的,在一些比較復(fù)雜的報(bào)表生成過程中,對業(yè)務(wù)系統(tǒng)的運(yùn)行產(chǎn)生相當(dāng)大的壓力。ODS的數(shù)據(jù)從粒度、組織方式等各個(gè)方面都保持了與業(yè)務(wù)系統(tǒng)的一致,那么原來由業(yè)務(wù)系統(tǒng)產(chǎn)生的報(bào)表、細(xì)節(jié)數(shù)據(jù)的查詢自然能夠從ODS中進(jìn)行,從而降低業(yè)務(wù)系統(tǒng)的查詢壓力。
3)
完成數(shù)據(jù)倉庫中不能完成的一些功能。 一般來說,帶有ODS的數(shù)據(jù)倉庫體系結(jié)構(gòu)中,DW層所存儲的數(shù)據(jù)都是進(jìn)行匯總過的數(shù)據(jù)和運(yùn)營指標(biāo),并不存儲每筆交易產(chǎn)生的細(xì)節(jié)數(shù)據(jù),但是在某些特殊的應(yīng)用中,可能需要對交易細(xì)節(jié)數(shù)據(jù)進(jìn)行查詢,這時(shí)就需要把細(xì)節(jié)數(shù)據(jù)查詢的功能轉(zhuǎn)移到ODS來完成,而且ODS的數(shù)據(jù)模型按照面向主題的方式進(jìn)行存儲,可以方便地支持多維分析等查詢功能。
**3. TDS(TRANSFORMED DATA STORES,轉(zhuǎn)換后的數(shù)據(jù)存儲)**
TDS在ODS之后,負(fù)責(zé)對數(shù)據(jù)進(jìn)行清洗、轉(zhuǎn)換和整合,以滿足特定的業(yè)務(wù)需求或分析需求。在TDS中,數(shù)據(jù)經(jīng)過一系列的處理操作,如去除重復(fù)數(shù)據(jù)、填充缺失值、轉(zhuǎn)換數(shù)據(jù)類型等,以生成更加準(zhǔn)確、一致和有用的數(shù)據(jù)集。
**4?.數(shù)據(jù)倉庫(DW)
4.1 概述
數(shù)據(jù)倉庫(Data Warehouse),是一個(gè)面向主題的、集成的、相對穩(wěn)定的、反映歷史變化的數(shù)據(jù)集合,用于支持管理決策。DW保持著所有的從ODS到來的數(shù)據(jù),并長期保存,而且這些數(shù)據(jù)不會被修改。(DW中的數(shù)據(jù)實(shí)際存儲在分布式文件系統(tǒng)中(如HDFS)。如果想要刪除數(shù)據(jù),一般會在分布式文件系統(tǒng)中進(jìn)行操作。而由于效率問題,數(shù)據(jù)倉庫一般只讀取數(shù)據(jù),不直接對數(shù)據(jù)進(jìn)行修改。)
(1)
面向主題(Subject Oriented)操作型數(shù)據(jù)庫的數(shù)據(jù)組織
面向事務(wù)處理任務(wù),各個(gè)業(yè)務(wù)系統(tǒng)之間各自分離,而數(shù)據(jù)倉庫中的數(shù)據(jù)是按照一定的主題域進(jìn)行組織的。
(2)
集成的(Integrated)數(shù)據(jù)倉庫中的數(shù)據(jù)是在對原有分散的數(shù)據(jù)庫數(shù)據(jù)抽取、清理的基礎(chǔ)上經(jīng)過系統(tǒng)加工、匯總和整理得到的,必須消除源數(shù)據(jù)中的不一致性,以保證數(shù)據(jù)倉庫內(nèi)的信息是關(guān)于整個(gè)企業(yè)的一致的全局信息。
(3)
相對穩(wěn)定的(Non-Volatile) 數(shù)據(jù)倉庫的數(shù)據(jù)主要供
企業(yè)決策分析之用,所涉及的數(shù)據(jù)操作主要是數(shù)據(jù)查詢,一旦某個(gè)數(shù)據(jù)進(jìn)入數(shù)據(jù)倉庫以后,一般情況下將被長期保留,也就是數(shù)據(jù)倉庫中一般有大量的查詢操作,但修改和刪除操作很少,通常只需要定期的加載、刷新。
(4)
反映歷史變化(Time Variant) 數(shù)據(jù)倉庫中的數(shù)據(jù)通常包含歷史信息,系統(tǒng)記錄了企業(yè)從過去某一時(shí)點(diǎn)(如開始應(yīng)用數(shù)據(jù)倉庫的時(shí)點(diǎn))到各個(gè)階段的信息,通過這些信息,可以對企業(yè)的
發(fā)展歷程和未來趨勢做出定量分析和預(yù)測。
4.2?數(shù)據(jù)倉庫的特征
特征有:
(1)效率足夠高,要對進(jìn)入的數(shù)據(jù)快速處理
(2)數(shù)據(jù)質(zhì)量高,數(shù)據(jù)倉庫是提供很多決策需要的數(shù)據(jù)支撐,DW的數(shù)據(jù)應(yīng)該是唯一的具有權(quán)威性的數(shù)據(jù),企業(yè)的所有系統(tǒng)只能從DW取數(shù)據(jù),所以需要定期對DW里面的數(shù)據(jù)進(jìn)行質(zhì)量審,保證DW里邊數(shù)據(jù)的唯一、權(quán)威、準(zhǔn)確性。
(3)擴(kuò)展性,企業(yè)業(yè)務(wù)擴(kuò)展和降低企業(yè)建設(shè)數(shù)據(jù)倉庫的成本考慮
(4)面向主題,數(shù)據(jù)倉庫中的數(shù)據(jù)是按照一定的主題域進(jìn)行組織的,每一個(gè)主題對應(yīng)一個(gè)宏觀的分析領(lǐng)域,數(shù)據(jù)倉庫排除對決策無用的數(shù)據(jù),提供特定主題的簡明視圖
(5)數(shù)據(jù)倉庫主要提供查詢服務(wù),并且需要查詢能夠及時(shí)響應(yīng)
(6)DW的數(shù)據(jù)也是只允許增加不允許刪除和修改,數(shù)據(jù)倉庫主要是提供查詢服務(wù),刪除和修改在
分布式系統(tǒng)
數(shù)據(jù)倉庫是一個(gè)過程而不是一個(gè)項(xiàng)目; 數(shù)據(jù)倉庫系統(tǒng)是一個(gè)信息提供平臺,從業(yè)務(wù)處理系統(tǒng)獲得數(shù)據(jù),主要以星型模型和雪花模型進(jìn)行數(shù)據(jù)組織,并為用戶提供各種手段從數(shù)據(jù)中獲取信息和知識。
從功能結(jié)構(gòu)劃分,數(shù)據(jù)倉庫系統(tǒng)至少應(yīng)該包含數(shù)據(jù)獲取(Data Acquisition)、數(shù)據(jù)存儲(Data Storage)、數(shù)據(jù)訪問(Data Access)三個(gè)關(guān)鍵部分。
**5.?數(shù)據(jù)集市(DM)
數(shù)據(jù)集市(Data Mart) ,為了特定的應(yīng)用目的或應(yīng)用范圍,而從數(shù)據(jù)倉庫中獨(dú)立出來的一部分?jǐn)?shù)據(jù),也可稱為部門數(shù)據(jù)或主題數(shù)據(jù)。
面向應(yīng)用。在數(shù)據(jù)倉庫的實(shí)施過程中往往可以從一個(gè)部門的數(shù)據(jù)集市著手,以后再用幾個(gè)數(shù)據(jù)集市組成一個(gè)完整的數(shù)據(jù)倉庫。
需要注意的就是在實(shí)施不同的數(shù)據(jù)集市時(shí),同一含義的字段定義一定要相容,這樣再以后實(shí)施數(shù)據(jù)倉庫時(shí)才不會造成大麻煩。數(shù)據(jù)集市,以某個(gè)業(yè)務(wù)應(yīng)用為出發(fā)點(diǎn)而建設(shè)的局部DW,DW只關(guān)心自己需要的數(shù)據(jù),不會全盤考慮企業(yè)整體的數(shù)據(jù)架構(gòu)和應(yīng)用。
特征有:
(1)DM結(jié)構(gòu)清晰,針對性強(qiáng),擴(kuò)展性好,因?yàn)镈M僅僅是單對一個(gè)領(lǐng)域而建立,容易維護(hù)修改
(2)DM建設(shè)任務(wù)繁重,公司有眾多業(yè)務(wù),每個(gè)業(yè)務(wù)單獨(dú)建立表
(3)DM的建立更多的消耗存儲空間,單獨(dú)一個(gè)DM可能數(shù)據(jù)量不大,但是企業(yè)所有領(lǐng)域都建立DM這個(gè)數(shù)據(jù)量就會增加多倍
6.如何能搭建一個(gè)體系,既能支持戰(zhàn)略決策使用的數(shù)據(jù)倉庫數(shù)據(jù),又能兼容業(yè)務(wù)快速的變化和運(yùn)營產(chǎn)品人員日常需求的ODS數(shù)據(jù)?
數(shù)據(jù)倉庫和ODS并存方案,經(jīng)過調(diào)研,發(fā)現(xiàn)大體上有三種解法:
(1)業(yè)務(wù)數(shù)據(jù) - ODS - 數(shù)據(jù)倉庫
(2)DB - ODS
優(yōu)點(diǎn):結(jié)構(gòu)簡單。一般的初創(chuàng)數(shù)據(jù)分析團(tuán)隊(duì)都是類似的結(jié)構(gòu),比如我們部門就應(yīng)該歸結(jié)到這一范疇 缺點(diǎn):這樣所有數(shù)據(jù)都?xì)w結(jié)到ODS,長期數(shù)據(jù)決策分析能力差,軟硬件成本高,模塊劃分不清晰,通用性差。
(3)數(shù)據(jù)倉庫和ODS并行
引用自:ODS、DW、DM - 知乎 (zhihu.com)?
數(shù)倉分層(ODS、DWD、DWS、DWT、ADS)和數(shù)倉建模_ods,dwd,dws,ads-CSDN博客
二、.數(shù)據(jù)倉庫分層
1?數(shù)據(jù)分層思想
?數(shù)據(jù)分層每個(gè)企業(yè)根據(jù)自己的業(yè)務(wù)需求可以分成不同的層次,但是最基礎(chǔ)的分層思想,理論上數(shù)據(jù)分為三個(gè)層,數(shù)據(jù)運(yùn)營層、數(shù)據(jù)倉庫層和數(shù)據(jù)服務(wù)層。基于這個(gè)基礎(chǔ)分層之上添加新的層次,來滿足不同的業(yè)務(wù)需求。 ?
2 數(shù)據(jù)分層的好處
(1)清晰數(shù)據(jù)結(jié)構(gòu): 每個(gè)數(shù)據(jù)分層都具有明確定義的作用范圍和職責(zé),使得在使用表時(shí)更容易定位和理解。
(2)減少重復(fù)開發(fā): 通過規(guī)范數(shù)據(jù)分層,可以開發(fā)一些通用的中間層數(shù)據(jù),從而極大地減少重復(fù)計(jì)算的工作。
(3)統(tǒng)一數(shù)據(jù)口徑: 數(shù)據(jù)分層提供了統(tǒng)一的數(shù)據(jù)出口,使得對外輸出的數(shù)據(jù)口徑更為一致。
(4)復(fù)雜問題簡單化: 通過將復(fù)雜任務(wù)分解為多個(gè)層次來完成,每一層解決特定的問題,從而簡化了整體任務(wù)的復(fù)雜性。
3?業(yè)界常見數(shù)倉分層架構(gòu)
? ? ? ? ? ?
簡拼 全稱?? ?說明ODSOperation Data Store操作數(shù)據(jù)存儲層,用于存儲來自業(yè)務(wù)系統(tǒng)的原始數(shù)據(jù)。從數(shù)據(jù)粒度上看ODS層是粒度最細(xì)的數(shù)據(jù)層。DWDData Warehouse Detail數(shù)據(jù)倉庫明細(xì)層,用于存儲經(jīng)過清洗和加工的明細(xì)數(shù)據(jù)。這層數(shù)據(jù)粒度通常和ODS的粒度相同,不同的是該層的數(shù)據(jù)質(zhì)量更高,字段更適合統(tǒng)計(jì)的需要等。同時(shí),為了提高數(shù)據(jù)明細(xì)層的易用性,該層會采用一些維度退化手法,將維度退化至事實(shí)表中,減少事實(shí)表和維表的關(guān)聯(lián)。DWM Data WareHouse Middle(可選) 數(shù)據(jù)中間層會在DWD層的數(shù)據(jù)基礎(chǔ)上,對數(shù)據(jù)做輕度的聚合操作,生成一系列的中間表,提升公共指標(biāo)的復(fù)用性,減少重復(fù)加工。 DWSData Warehouse Summary數(shù)據(jù)倉庫匯總層,又稱數(shù)據(jù)集市或?qū)挶恚糜诖鎯R總后的數(shù)據(jù)。從數(shù)據(jù)粒度來說,這層的數(shù)據(jù)是輕度匯總級的數(shù)據(jù),已經(jīng)不存在明細(xì)數(shù)據(jù)了。按照業(yè)務(wù)劃分,如流量、訂單、用戶等,生成字段比較多的寬表,用于提供后續(xù)的業(yè)務(wù)查詢,OLAP分析,數(shù)據(jù)分發(fā)等。ADSApplication Data Service數(shù)據(jù)應(yīng)用服務(wù)層,為應(yīng)用系統(tǒng)提供數(shù)據(jù)服務(wù)。從數(shù)據(jù)粒度來說是高度匯總的數(shù)據(jù)。面向用戶應(yīng)用和分析需求,包括前端報(bào)表、分析圖表、KPI、儀表盤、OLAP、專題等分析DIMDimension 公共維度層由維度表構(gòu)成,基于維度建模理念,建立整個(gè)企業(yè)的一致性維度。 高基數(shù)維度數(shù)據(jù):一般是用戶資料表、商品資料表類似的資料表。數(shù)據(jù)量可能是千萬級或者上億級別。 低基數(shù)維度數(shù)據(jù):一般是配置表,比如枚舉值對應(yīng)的中文含義,或者日期維表。數(shù)據(jù)量可能是個(gè)位數(shù)或者幾千幾萬。 TMP(可選)DWTMP層是數(shù)據(jù)倉庫中的一個(gè)特定層次,專門用于存儲數(shù)據(jù)倉庫各層計(jì)算過程中產(chǎn)生的臨時(shí)表。
? ? ? ? ? ? ? ? ? ??
?4?案例根據(jù)架構(gòu)設(shè)計(jì)數(shù)據(jù)體系
舉個(gè)例子說明一下,如下圖,可以認(rèn)為是一個(gè)電商網(wǎng)站的數(shù)據(jù)體系設(shè)計(jì)。我們暫且只關(guān)注用戶訪問日志這一部分?jǐn)?shù)據(jù)。
在ODS層中,由于各端的開發(fā)團(tuán)隊(duì)不同或者各種其它問題,用戶的訪問日志被分成了好幾張表上報(bào)到了我們的ODS層。
為了方便大家的使用,我們在DWD層做了一張用戶訪問行為天表,在這里,我們將PC網(wǎng)頁、H5、小程序和原生APP訪問日志匯聚到一張表里面,統(tǒng)一字段名,提升數(shù)據(jù)質(zhì)量,這樣就有了一張可供大家方便使用的明細(xì)表了。
在DWM層,我們會從DWD層中選取業(yè)務(wù)關(guān)注的核心維度來做聚合操作,比如只保留人、商品、設(shè)備和頁面區(qū)域維度。類似的,我們這樣做了很多個(gè)DWM的中間表
然后在DWS層,我們將一個(gè)人在整個(gè)網(wǎng)站中的行為數(shù)據(jù)放到一張表中,這就是我們的寬表了,有了這張表,就可以快速滿足大部分的通用型業(yè)務(wù)需求了。
最后,在APP應(yīng)用層,根據(jù)需求從DWS層的一張或者多張表取出數(shù)據(jù)拼接成一張應(yīng)用表即可。
5?不同的層次中用到的計(jì)算引擎和存儲系統(tǒng)
6?如何構(gòu)建一個(gè)高效的數(shù)據(jù)倉庫分層體系
首先,?企業(yè)需要明確業(yè)務(wù)需求和數(shù)據(jù)特點(diǎn),確定分層的粒度和層次結(jié)構(gòu)。其次,?選擇合適的存儲技術(shù)和工具,確保各層次數(shù)據(jù)的高效存儲和訪問。最后,?建立完善的數(shù)據(jù)管理流程和規(guī)范,確保數(shù)據(jù)的準(zhǔn)確性和安全性。
數(shù)據(jù)分層的劃分時(shí),我從以下幾個(gè)角度進(jìn)行思考:
對應(yīng)用的支持: 從這個(gè)角度來看,我們期望越靠上層次,越能夠友好地支持應(yīng)用。例如,APP層基本上是為應(yīng)用專門設(shè)計(jì)的,易于理解。相較之下,DWS層可能會有一些理解成本,而DWM和DWD層則更加復(fù)雜,因?yàn)樗鼈兛赡苌婕岸鄠€(gè)維度,并需要進(jìn)行復(fù)雜的計(jì)算才能滿足需求。
能力范圍: 我們希望80%的需求可以由20%的表來支持。換言之,大部分(80%以上)的需求都可以使用DWS層的表來支持,DWS無法支持的需求可以借助DWM和DWD層的表,而僅有極少部分的數(shù)據(jù)需求可能需要從原始日志中提取。結(jié)合第一點(diǎn),我們希望以對應(yīng)用非常友好的方式來支持80%的需求,而不是直接將原始日志暴露給應(yīng)用方。
數(shù)據(jù)聚合程度: 我們希望上層數(shù)據(jù)的聚合程度越高越好。以O(shè)DS和DWD的數(shù)據(jù)為例,它們基本上保留了原始日志的粒度,沒有進(jìn)行任何聚合操作。DWM進(jìn)行了輕度的聚合,僅保留了通用的維度,而DWS則進(jìn)行了更高級的聚合操作,可能只保留了一到兩個(gè)能夠完整描述當(dāng)前主體的維度。從這個(gè)角度來看,我們可以理解為我們是根據(jù)數(shù)據(jù)的聚合程度來劃分?jǐn)?shù)據(jù)層次的。
參考自:數(shù)據(jù)倉庫內(nèi)容分享(六):數(shù)據(jù)倉庫層次化設(shè)計(jì)_數(shù)據(jù)明細(xì)層-CSDN博客
三、問題
4.1 DWS 與 DWD?
問答一: dws 和 dwd 的關(guān)系
問:dws 和dwd 是并行而不是先后順序?
答:并行的,dw 層
問:那其實(shí)對于同一個(gè)數(shù)據(jù),這兩個(gè)過程是串行的?
答:dws 會做匯總,dwd 和 ods 的粒度相同,這兩層之間也沒有依賴的關(guān)系
問:對呀,那這樣 dws 里面的匯總沒有經(jīng)過數(shù)據(jù)質(zhì)量和完整度的處理,或者單獨(dú)做了這種質(zhì)量相關(guān)的處理,為什么不在 dwd 之上再做匯總呢?我的疑問其實(shí)就是,dws的輕度匯總數(shù)據(jù)結(jié)果,有沒有做數(shù)據(jù)質(zhì)量的處理?
答:ods 直接到 dws 就好,沒必要過 dwd,我舉個(gè)例子,你的瀏覽商品行為,我做一層輕度匯總,就直接放在 dws 了。但是你的資料表,要從好多表湊成一份,我們從四五份個(gè)人資料表中湊出來了一份完整的資料表放在了 dwd 中。然后在 app 層,我們要出一張畫像表,包含用戶資料和用戶近一年的行為,我們就直接從dwd中拿資料, 然后再在 dws 的基礎(chǔ)上做一層統(tǒng)計(jì),就成一個(gè)app表了。當(dāng)然,這不是絕對,dws 和 dwd 有沒有依賴關(guān)系主要看有沒有這種需求。
4.2 ODS與DWD區(qū)別?
問:還是不太明白 ods 和 dwd 層的區(qū)別,有了 ods 層后感覺 dwd 沒有什么用了。
答:嗯,我是這樣理解的,站在一個(gè)理想的角度來講,如果 ods 層的數(shù)據(jù)就非常規(guī)整,基本能滿足我們絕大部分的需求,這當(dāng)然是好的,這時(shí)候 dwd 層其實(shí)也沒太大必要。 但是現(xiàn)實(shí)中接觸的情況是 ods 層的數(shù)據(jù)很難保證質(zhì)量,畢竟數(shù)據(jù)的來源多種多樣,推送方也會有自己的推送邏輯,在這種情況下,我們就需要通過額外的一層 dwd 來屏蔽一些底層的差異。
問:我大概明白了,是不是說 dwd 主要是對 ods 層做一些數(shù)據(jù)清洗和規(guī)范化的操作,dws 主要是對 ods 層數(shù)據(jù)做一些輕度的匯總?
答:對的,可以大致這樣理解。
4.3 app層干什么的?
問答三:app 層是干什么的?
問:感覺數(shù)據(jù)集市層是不是沒地方放了,各個(gè)業(yè)務(wù)的數(shù)據(jù)集市表是應(yīng)該在 dwd 還是在 app?
答:這個(gè)問題不太好回答,我感覺主要就是明確一下數(shù)據(jù)集市層是干什么的,如果你的數(shù)據(jù)集市層放的就是一些可以供業(yè)務(wù)方使用的寬表表,放在 app 層就行。如果你說的數(shù)據(jù)集市層是一個(gè)比較泛一點(diǎn)的概念,那么其實(shí) dws、dwd、app 這些合起來都算是數(shù)據(jù)集市的內(nèi)容。
問:那存到 Redis、ES 中的數(shù)據(jù)算是 app層嗎?
答:算是的,我個(gè)人的理解,app 層主要存放一些相對成熟的表,能供業(yè)務(wù)側(cè)使用的。這些表可以在 Hive 中,也可以是從 Hive 導(dǎo)入?Redis?或者 ES 這種查詢性能比較好的系統(tǒng)中。
?
四、數(shù)據(jù)模型的評價(jià)標(biāo)準(zhǔn)
數(shù)據(jù)模型建設(shè)的怎么樣,極度依賴規(guī)范設(shè)計(jì),如果代碼風(fēng)格是“千人千面”,那么恐怕半年下來,業(yè)務(wù)系統(tǒng)就沒法看了。沒有什么比“數(shù)據(jù)系統(tǒng)”更看重“法制”了,規(guī)范體系不僅能保障數(shù)據(jù)建設(shè)的一致性,也能夠應(yīng)對業(yè)務(wù)交接的情況,更能夠?yàn)樽詣踊於ɑA(chǔ)。
業(yè)務(wù)過程清晰:ODS就是原始信息,不修改;DWD面向基礎(chǔ)業(yè)務(wù)過程;DIM描述維度信息;DWS針對最小場景做指標(biāo)計(jì)算;ADS也要分層,面向跨域的建設(shè),和面向應(yīng)用的建設(shè);指標(biāo)可理解:按照一定業(yè)務(wù)事務(wù)過程進(jìn)行業(yè)務(wù)劃分,明細(xì)層粒度明確、歷史數(shù)據(jù)可獲取,匯總層維度和指標(biāo)同名同義,能客觀反映業(yè)務(wù)不同角度下的量化程度;核心模型相對穩(wěn)定:如果業(yè)務(wù)過程運(yùn)行的比較久,過程相對固定,就要盡快下沉到公共層,形成可復(fù)用的核心模型;高內(nèi)聚低耦合:各主題內(nèi)數(shù)據(jù)模型要業(yè)務(wù)高內(nèi)聚,避免在一個(gè)模型耦合其他業(yè)務(wù)的指標(biāo),造成該模型主題不清晰和性價(jià)比低。
柚子快報(bào)激活碼778899分享:【數(shù)據(jù)倉庫】數(shù)據(jù)倉庫層次化設(shè)計(jì)
文章來源
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。