構建企業級數據倉庫

      1、     肯定主題前端

 即肯定數據分析或前端展示的主題(:某年某月某地區的啤酒銷售狀況)。主題要體現出某一方面的各分析角度(維度)和統計數值型數據(量度)之間的關係,肯定主題時要綜合考慮.數據庫

2、     肯定量度數組

 肯定主題後,須要考慮分析的技術指標(:年銷售額等等)。它們通常爲數據值型數據,其中有些度量值不能夠彙總;而有些是能夠彙總起來,以便爲分析者提供有用的信息。量度是要統計的指標,必須事先選擇恰當,基於不一樣的量度能夠進行復雜關鍵性指標(KPI)的設計和計算性能優化

3、     肯定事實數據粒度服務器

 肯定量度以後,須要考慮該量度的彙總狀況和不一樣維度下量度的聚合狀況.例如在業務系統中數據最小記錄到秒,而在未來分析需求中,時間只要精確到天就能夠了,在ETL處理過程當中,按天來彙總數據,些時數據倉庫中量度的粒度就是。若是不能確認未來的分析需求中是否要精確的秒,那麼,咱們要遵循最小粒度原則」,在數據倉庫中的事實表中保留每一秒的數據,從而在後續創建多維分析模型(CUBE)的時候,會對數據提早進行彙總,保障產生分析結果的效率。oracle

4、     肯定維度數據庫設計

維度是分析的各個角度.:咱們但願按照時間,或者按照地區,或者按照產品進行分析。那麼這裏的時間,地區,產品就是相應的維度。基於不一樣的維度,能夠看到各個量度彙總的狀況,也能夠基於全部的維度進行交叉分析。工具

維度的層次(Hierarchy)和級別(Level)。例:在時間維度上,按照-季度-造成了一個層次,其中」 ,」季度」 ,」成爲了這個層次的3個級別。咱們能夠將產品大類-產品子類-產品劃爲一個層次,其中包含產品大類產品子類產品三個級別。性能

 咱們能夠將3個級別設置成一張數據表中的3個字段,好比時間維度;咱們也可使用三張表,分別保存產品大類,產品子類,產品三部分數據,好比產品維度。優化

 創建維度表時要充分使用代理鍵.代理鍵是數據值型的ID號碼(每張表的第一個字段),它惟一標識了第一維度成員。在聚合時,數值型字段的匹配和比較,join效率高。同時代理鍵在緩慢變化維中,起到了對新數據與歷史數據的標識做用。

5、     建立事實表

 在肯定好事實數據和維度後,將考慮加載事實表。業務系統的的一筆筆生產,交易記錄就是將要創建的事實表的原始數據.

 咱們的作法是將原始表與維度表進行關聯,生成事實表。關聯時有爲空的數據時(髒數據),須要使用外鏈接,鏈接後將各維度的代理鍵取出放於事實表中,事實表除了各維度代理鍵外,還有各度量數據,不該該存在描述性信息。

 事實表中的記錄條數據都比較多,要爲其設置複合主鍵各索引,以實現數據的完整性和基於數據倉庫的查詢性能優化。     


元數據:

描述數據及其環境的數據。兩方面用途:

首先,元數據能提供基於用戶的信息,如記錄數據項的業務描述信息的元數據能幫助用戶使用數據。

其次,元數據能支持系統對數據的管理和維護,如關於數據項存儲方法的元數據能支持系統以最有效的方式訪問數據。

元數據機制主要支持如下五類系統管理功能:

(1)描述哪些數據在數據倉庫中;

(2)定義要進入數據倉庫中的數據和從數據倉庫中產生的數據;

(3)記錄根據業務事件發生而隨之進行的數據抽取工做時間安排;

(4)記錄並檢測系統數據一致性的要求和執行狀況;

(5)衡量數據質量。

 

ODS: Operational Data Store

ODS爲企業提供即時的,操做型的,集成的數據集合,具備面向主題性,集成性,動態性,即時性,明細性等特色

ODS做爲數據庫到數據倉庫的一種過渡形式,與數據倉庫在物理結構上不一樣,能提供高性能的響應時間,ODS<span style="font-family: 宋體;font-size: 16px" times="" "times="" new="" roman""="">設計採用混合設計方式。

ODS中的數據是"實時值",<span style="font-family: 宋體;font-size: 16px" times="" "times="" new="" roman""="">而數據倉庫的數據倒是"歷史值",通常ODS<span style="font-family: 宋體;font-size: 16px" times="" "times="" new="" roman""="">中儲存的數據不超過一個月,而數據倉庫爲10年或更多.

 

Data Mart

爲了特定的應用目的或應用範圍,而從數據倉庫中獨立出來的一部分數據,也可稱爲部門數據或主題數據(subjectarea)。在數據倉庫的實施過程當中每每能夠從一個部門的數據集市着手,之後再用幾個數據集市組成一個完整的數據倉庫。須要注意的就是在實施不一樣的數據集市時,同一含義的字段定義必定要相容,這樣再之後實施數據倉庫時纔不會形成大麻煩。

 

DDS(decision-support system)決策支持系統

用於支持管理決策的系統。一般,DSS包括以啓發的方式對大量的數據單元進行的分析,一般不涉及數據更新

 

三.什麼叫OLAP?用途是什麼?

 聯機分析處理,On-Line Analysis Processing 即從數據倉庫中抽取詳細數據的一個子集並通過必要的彙集,存儲到OLAP存儲器中供前端分析工具讀取。

OLAP系統按照數據存儲格式能夠分爲關係OLAPRelationalOLAP,簡稱ROLAP)、多維OLAPMultidimensionalOLAP,簡稱MOLAP)和混合型OLAPHybridOLAP,簡稱HOLAP)三種類型。

ROLAP將分析要用的多維數據存儲在關係數據庫中,並根據應用的須要有選擇的定義一批實視圖也存儲在關係數據庫中

MOLAPOLAP分析所要用到的多維數據物理上存儲爲多維數組的形式,造成立方體的結構。

HOLAP能把MOLAPROLAP兩種結構的優勢有機的結合起來,能知足用戶各類複雜的分析請求。

 

OLTPOLAP的區別

           OLTP                                OLAP

用戶       操做人員                            決策人員

功能       平常操做                            分析決策

DB設計    面積應用                            面向主題

數據       當前的,最新的,細節的,二維的      歷史的,歸納的,多維集成的,統一的

存取及規模 讀取少                              大規模讀

 

事實表 

事實表是包含大量數據值的一種結構。事實數據表可能表明某次銀行交易,包含一個顧客的來訪次數,而且這些數字信息能夠彙總,以提供給有關單位做爲歷史的數據。

每一個數據倉庫都包含一個或者多個事實數據表。事實數據表只能包含數字度量字段和使事實表與維度表中對應項的相關索引字段.,該索引包含做爲外鍵的全部相關性維度表的主鍵。

事實數據表中的度量值有兩中:一種是能夠累計的度量值,另外一種是非累計的度量值。用戶能夠經過累計度量值得到彙總信息。

 

維度表

用來描述事實表的某個重要方面,維度表中包含事實表中事實記錄的特性:有些特性提供描述性信息,有些特性指定如何彙總事實數據表數據,以便爲分析者提供有用的信息,維度表包含幫助彙總數據的特性的層次結構

 

緩慢變化維:在實際狀況下,維度的屬性並非靜態的,它會隨着時間的流失發生緩慢的變化。

處理方法: 1新信息直接覆蓋舊信息,2,保存多條記錄,並添加字段加以區分(用y,n;0,1,2或用時間來區別新舊記錄)

3.保存多條記錄,並添加字段加以區分4.另外建表保存歷史記錄.5混合模式

 

退化維

般來講事實表中的外鍵都對應一個維表,維的信息主要存放在維表中。可是退化維僅僅是事實表中的一列,這個維的相關信息都在這一列中,沒有維表與之相關聯。好比:發票號,序列號等等。
    
那麼退化維有什麼做用呢?
    1
、退化維具備普通維的各類操做,好比:上卷,切片,切塊等

(上卷彙總,下鑽明細;切片,切塊:對二維數據進行切片,三維數據進行切塊,,可獲得所須要的數據)
    2
、若是存在退化維,那麼在ETL的過程將會變得容易。
    3
、它可讓group by等操做變得更快

粒度:granularity

是指數據倉庫的數據單位中保存數據的細化或綜合程度的級別,細化程度越高,粒度就越小。

 

鑽取:

首先從某一個彙總數據出發,查看組成該數據的各個成員數據。

 

KPIKey Performance Indication關鍵業績指標用來衡量業績好壞好比銷售這個主題,銷售增加率、銷售淨利潤就是一個KPI

 

E T L

extract/transformation/load尋找數據,整合數據,並將它們裝入數據倉庫的過程。

ETL是將業務系統的數據通過抽取、清洗轉換以後加載到數據倉庫的過程,目的是將企業中的分散、零亂、標準不統一的數據整合到一塊兒,爲企業的決策提供分析的依據。

工做流 抽取à清洗,轉換à加載    數據流 業務系統àODSà數據倉庫

.抽取

方法有三種:1.利用工具,例如datastageinformaticOWBDTSSISS. 2,利用存儲過程. 3,前兩種工具結合.

抽取前的調研準備工做:1.弄清數據是從哪幾個業務系統中來,各個業務系統的數據庫服務器運行什麼DBMS. 2.是否存在手工數據,手工數據量有多大。3.是否存在非結構化的數據。

抽取中的數據處理方法:

1.     業務系統服務器與DWDBMS相同時,在DW數據倉庫服務器與原業條系統之間創建直接的連接關係就能夠寫select語句直接訪問.

2.     業務系統服務器與DWDBMS不一樣時,對不能創建直接連接的話,能夠將源數據導入.txt文件,在導入ODS,或經過程序接口來完成.

3.     對於文件類型數據源(.txt.xls)利用數據庫工程將這個數據導入指定的數據庫,如(oracleSQL*LOADER,db2import)

如何實現增量抽取

業務系統會記錄業務發生的時間,咱們能夠用來作增量的標誌,每次抽取以前首先判斷ODS中記錄最大的時間,而後根據這個時間去業務系統取大於這個時間全部的記錄。

.清洗與轉換

清洗

數據清洗的任務是過濾那些不符合要求的數據,將過濾的結果交給業務主管部門,確認是否過濾掉仍是由業務單位修正以後再進行抽取

清洗的數據種類: 1,不完整數據,2,錯誤數據,3重複的數據.

轉換

1.不一致數據轉換:編碼轉換(m,f;男女);字段轉換(balance,bal);度量單位的轉換(cm,m)

2.數據粒度的轉換;業務系統數據存儲很是明細的數據,而數據倉庫中數據是用分析的,不須要很是明細,會將業務系統數據按照數據倉庫粒度進行聚合.

3.商務規則的計算.不一樣企業有不一樣的業務規則,不一樣的數據指標,ETL過程,將這些數據計算好以後存儲在數據倉庫中,供分析使用(好比KPI)

.加載通過前兩步處理後的數據可直接加載入數據倉庫

 

用過什麼ETL工具(informaticassisowbdatastage),以及該工具簡單講述特色。

 DataStage是一套專門對多種操做數據源的數據抽取、轉換和維護過程進行簡化和自動化,並將其輸入數據集市或數據倉庫目標數據庫的集成工具。

它有四個組件:Administrator:用來管理project和環境變量。Manager:用於job,表定義,的引導,引出。Designer:用來設計jobDirect:用運查看job運行日誌。

 

星形模型與雪花模型的區別?

1.星星的中心是一個大的事實表,發散出來的是維度表,每個維度表用一個PK-FK鏈接到事實表,維度表之間彼此並不關聯。一個事實表又包括一些度量值和維度。

2.雪花模型經過規範維度表來減小冗餘度,也就是說,維度表數據已經被分組成一個個的表而不是使用一個大表。例如產品表被分紅了產品大類和產品小類兩個表。儘管這樣作能夠節省了空間,可是卻增長了維度表的數量和關聯的外鍵的個數。這就致使了更復雜的查詢並下降了數據庫的效率

 

維度建模(dimensional modeling):

是數據倉庫建設中的一種數據建模方法。按照事實表,維表來構建數據倉庫,數據集市。這種方法最被人普遍知曉的名字就是星型模式(Star-schema)。


什麼叫查找表,爲何使用替代鍵?(其實目的和上面同樣,從基礎表到緩慢維度表的過程當中的一種實現途徑)

替代鍵(alternate key)能夠是數據表內不做爲主鍵的其餘任何列,只要該鍵對該數據表惟一便可。換句話說,在惟一列內不容許出現數據重複的現象。

數據倉庫項目最重要或須要注意的是什麼,以及如何處理

數據質量,主要是數據源數據質量分析,數據清洗轉換,固然也能夠定量分析

數據倉庫有兩個重要目的,一是數據集成,二是服務BI
數據準確性是數據倉庫的基本要求,而效率是項目事實的前提,數據質量、運行效率和擴展性是數據倉庫項目設計、實施高明與否的三大標誌;

 

代理鍵:

在關係型數據庫設計中,是在當資料表中的候選鍵都不適合當主鍵時,例如資料太長,或是意義層面太多,就會用一個attribute來當代理主鍵,此主鍵多是用流水號,來代替可辨識惟一值的主鍵

在數據倉庫領域有一個概念叫Surrogate key,中文通常翻譯爲代理關鍵字。代理關鍵字通常是指維度表中使用順序分配的整數值做爲主鍵,也稱爲代理鍵。代理關鍵字用於維度表和事實表的鏈接。能夠避免經過主鍵的值就能夠了解一些業務信息

相關文章
相關標籤/搜索