總線架構是數據倉庫建設的整體規劃,從總體視角描述瞭解決方案的維度模型,描述了各個子系統的功能以及關係,描述數據從源系統到決策系統的數據流程,提供創建企業數據倉庫系統的增量式方法。業務需求回答了要作什麼,總線架構就是回答怎麼作的問題。前端
1、總體解決方案架構:數據結構
數據倉庫的核心功能從源系統抽取數據,經過清洗、轉換、標準化,將數據加載到BI平臺,進而知足業務用戶的數據分析和決策支持。數據倉庫總體解決方案架構包含三個部分:源數據、 數據倉庫、數據應用。架構
2、數據倉庫分層架構:性能
數據倉庫的數據來源於不一樣的源數據,並提供多樣的數據應用,數據自下而上流入數據倉庫後向上層開放應用,而數據倉庫能夠是數據中心管控平臺。學習
源數據層(ODS):此層數據無任何更改,直接沿用外圍系統數據結構和數據,不對外開放;爲臨時存儲層,是接口數據的臨時存儲區域,爲後一步的數據處理作準備,通常只會進行數據篩選和異常處理。編碼
數據轉換層(DSA):數據加工區域,主要涉及數據的轉換數據,清洗數據,過濾數據等操做。spa
數據倉庫層(EDW):DW 層的數據應該是一致的、準確的、乾淨的數據,即對源系統數據進行了清洗(去除了雜質)後的數據。設計
數據應用層(DA 或 APP):前端應用直接讀取的數據倉庫;根據報表、專題分析需求而計算生成的數據,數據倉庫是數據處理的後臺,業務用戶並不關心後臺怎麼處理。數據應用是數據呈現的前臺,是業務用戶進行查詢的入口。BI應用程序的體驗也是衡量數據倉庫是否成功的主要因素。好的數據倉庫搭建平臺能夠經過數據倉庫將數據發送到前端進行分析數據。blog
數據倉庫從各數據源獲取數據及在數據倉庫內的數據轉換和流動均可以認爲是 ETL的過程,ETL 是數據倉庫的流水線,也能夠認爲是數據倉庫的血液,它維繫着數據倉庫中數據的新陳代謝,而數據倉庫平常的管理和維護工做的大部分精力就是保持 ETL 的正常和穩定。排序
3、爲何要對數據倉庫架構進行分層?
數據倉庫的分層是在利用空間換時間,經過大量的預處理來提高應用系統的用戶體驗(效率),所以數據倉庫會存在大量冗餘的數據;不分層的話,若是源業務系統的業務規則發生變化將會影響整個數據清洗過程,工做量巨大。經過數據分層管理能夠簡化數據清洗的過程,由於把原來一步的工做分到了多個步驟去完成,至關於把一個複雜的工做拆成了多個簡單的工做,將數據倉庫分層後更加方便處理每一層,這樣每一層的處理邏輯都相對簡單和容易理解,咱們也比較容易保證每個步驟的正確性,當數據發生錯誤的時候,每每咱們只須要局部調整某個步驟便可。固然分層也要適當,若是項目較小徹底能夠直接使用兩層架構來完成工做就沒有必要搭建三層架構。
4、架構的特色:
一、易用性,數據倉庫的目的是決策支持系統(Decision Support System ,簡稱DSS),既然面向的的是分析用戶,那麼數據越容易理解,越能受用戶歡迎,而維度建模包含具備描述特性的維度表可讓用戶很容易理解數據,而不像範式建模,因爲太過規範化而致使用戶對數據的理解有必定的難度,須要對業務的很深很細的瞭解。
二、性能高,經過數據的處理,排序和整合,構建出來的維度表,不只可以讓用戶很方便的理解數據,使用數據,並且在計算所須要的數據的時候,不須要關聯太多的表,從而使得計算的性能很高。
三、擴展性,具備很是好的可擴展性,以便容納不可預知的新數據源和新的設計決策。能夠很方便在不改變模型粒度狀況下,增長新的分析維度和事實,不須要重載數據,也不須要爲了適應新的改變而從新編碼。
5、總結
經過使用維度建模,用戶能夠獲得很好的效果,只有用戶滿意了,數據倉庫才能實現更大的價值。能夠說維度建模的核心是星型模型,星型模型所擁有的特色正是用戶方便使用的根源。維度模型也有缺點,好比數據一致性很難保證,數據冗餘,維度信息處理等,但這些相對於它的優勢來說都是可接受的,並且也能夠經過其餘方式避免和簡化的。若是以維表爲總線,事實表以維表爲基礎的總線矩陣,建設出來的架構正是總線式架構。
本文中若有錯誤或誤導的地方歡迎你們指出糾正。 但願這篇文章可以給你們帶來幫助,最後感謝你們的閱讀。歡迎你們一塊兒加入高效數據處理ETL交流羣,一塊兒討論數據分析ETL過程的問題,一塊兒學習一塊兒成長。下一篇咱們開始來了解元數據管理。
掃碼加羣: