数据分层/ODS/DW/DM
生活随笔
收集整理的這篇文章主要介紹了
数据分层/ODS/DW/DM
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
數據分層/ODS/DW/DM
- 數據分層
- 數據分層的目的
- ODS層 (Operational Data Store 又稱數據運營層)
- DW層(data warehouse 數據倉庫)
- DM層 (data market 數據集市)
數據分層
數據分層的目的
我們對數據進行分層的一個主要原因就是希望在管理數據的時候,能對數據有一個更加清晰的掌控,詳細來講,主要有下面幾個原因:1.清晰數據結構:每一個數據分層都有它的作用域,這樣我們在使用表的時候能更方便地定位和理解。 2.數據血緣追蹤:簡單來講可以這樣理解,我們最終給業務誠信的是一能直接使用的張業務表,但是它的來源有很多,如果有一張來源表出問題了,我們希望能夠快速準確地定位到問題,并清楚它的危害范圍。 3.減少重復開發:規范數據分層,開發一些通用的中間層數據,能夠減少極大的重復計算。 4.把復雜問題簡單化。講一個復雜的任務分解成多個步驟來完成,每一層只處理單一的步驟,比較簡單和容易理解。而且便于維護數據的準確性,當數據出現問題之后,可以不用修復所有的數據,只需要從有問題的步驟開始修復。 5.屏蔽原始數據的異常。 6.屏蔽業務的影響,不必改一次業務就需要重新接入數據。ODS層 (Operational Data Store 又稱數據運營層)
ods 又稱數據運營層,Operational Data Store 層,數據來源包括: 1. sqoop 數據導入 2. canal 監控mysql binlog 實時導入 3. flume/網關 --> kafaka --> flink/streaming 流導入ods層數據并非完全的原始數據,而是要考慮一定的數據清洗,比如異常字段的處理、 字段命名規范化、時間字段的統一等處理后的結果。DW層(data warehouse 數據倉庫)
DW數據分bai層,由下到上為 DWD,DWB,DWS DWD:dudata warehouse detail 細節數據層,有的也稱為 ODS層,是業務層dao與數據倉庫的隔離層 DWB:data warehouse base 基礎數據層,存儲的是客觀數據,一般用作中間層,可以認為是大量指標的數據層。 DWS:data warehouse service 服務數據層,基于DWB上的基礎數據,整合匯總成分析某一個主題域的服務數據,一般是寬表。 1.如果 ods 層的數據就非常規整,基本能滿足我們絕大部分的需求,這當然是好的,這時候 dwd 層其實也沒太大必要。 但是現實中接觸的情況是 ods 層的數據很難保證質量,畢竟數據的來源多種多樣,推送方也會有自己的推送邏輯,在這種情況下,我們就需要通過額外的一層 dwd 來屏蔽一些底層的差異。 2.DWB層是面向主題的,數據倉庫中數據是按照一定主題領域進行組織的,每一個主題對應一個宏觀分析領域, 3.DWS層可以理解成 dw到dm的過度,是一些寬表匯總,有些可以理解成dm層dw理解: 1.dw主要提供查詢服務,并且需要查詢能夠及時響應。 2.進入dw的數據應該是能唯一的具有權威性的數據,企業的系統只能使用從dw提供的被認可的數據,所以預先做好企業的元數據建立非常必要。 3.定期需要對dw里面的數據進行質量檢查,保證dw里面的數據唯一、權威、準確。 4.dw的數據也是只允許增加不允許刪除和修改,數據倉庫主要是提供查詢服務,刪除和修改在分布式系統中會消耗大量的性能資源。DM層 (data market 數據集市)
數據集市,以某個業務應用為出發點而建設的局部dw,dw只關心自己需要的數據,不會全盤考慮企業整體的數據架構和應用。每個應用有自己的dmdm理解: 1.dm結構清晰、針對性強、擴展性好,因為dm僅僅是單對某一個領域而建立,容易維護和修改。 2.dm建設任務繁重,公司有眾多業務每一個業務單獨加建立工作量集合增加啊。 3.dm的建立消耗更多存儲空間,單獨一個dm可能數據量不大,但是企業所有領域都建立dm數據量就會增加很多倍。總結
以上是生活随笔為你收集整理的数据分层/ODS/DW/DM的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 格子大法与换入换出分析
- 下一篇: 什么技术能改变世界?