報表工具->數(shù)據(jù)倉庫->商業(yè)智能
很多國有大企業(yè)的ERP實施是伴隨著一大堆分析報表的,如果ERP實施不考慮眾多的報表指標(biāo)和報表間復(fù)雜的鉤稽關(guān)系, 而僅僅是滿足財務(wù)的核算, 就非??赡苊媾R失敗, 早期的國外ERP中一般會在各模塊提供眾多的系統(tǒng)分析報表系統(tǒng),比如信息系統(tǒng)或?qū)I(yè)的報表分析工具, 但是這些在線分析報表如果和業(yè)務(wù)分析處理系統(tǒng)處在同一服務(wù)器,則嚴(yán)重浪費資源,于是產(chǎn)生了所謂的DW數(shù)據(jù)倉庫, 現(xiàn)在DW換了個新叫法BI(商業(yè)智能). 在一個大型集團(tuán),如果基礎(chǔ)數(shù)據(jù)不全、管理不規(guī)范,核算不標(biāo)準(zhǔn)的情況下就實施BI,成功率將非常小.
.什么是數(shù)據(jù)倉庫(Data Warehouse)?
你可能得到很多關(guān)于數(shù)據(jù)倉庫的定義,但我還是愿意引申”數(shù)據(jù)倉庫之父”的William H. Inmon 在1991年 出版的“Building the Data Warehouse”一書中所提出的定義.
*http://www.inmoncif.com/home/ 是Inmon的個人主頁,一看就知道是個喜歡折騰技術(shù)的人….
數(shù)據(jù)倉庫是一個面向主題的、集成的、相對穩(wěn)定的、反映歷史變化的、用于支持管理決策的數(shù)據(jù)集合。
根據(jù)數(shù)據(jù)倉庫的定義,它被描述成一個用來支持符合企業(yè)發(fā)展的管理決策的綜合的解決方案.
為什么使用數(shù)據(jù)倉庫(DW)?有這么些原因
(1).企業(yè)規(guī)模龐大.
(2).業(yè)務(wù)數(shù)據(jù)龐大.
(3).各分子公司系統(tǒng)異構(gòu).
(4).各種類型業(yè)務(wù)數(shù)據(jù)來源,數(shù)據(jù)需要匯總整合.
(5).ERP數(shù)據(jù)庫性能原因,生產(chǎn)系統(tǒng)性能的降低.
(6) ERP.數(shù)據(jù)庫通常不是為分析的目的設(shè)計的
ERP系統(tǒng)一般認(rèn)為是OLTP系統(tǒng),它不是專門為交叉主題分析報告而設(shè)計的.
交叉主題分析數(shù)據(jù)通常來自不同的模塊,報表公式邏輯將負(fù)責(zé)且分散.
(7).性能為體,復(fù)雜的管理層決策報表可能需要從多個模塊獲得數(shù)據(jù),這樣的報表開發(fā)通常因為業(yè)務(wù)數(shù)據(jù)量過多而導(dǎo)致運行速度極慢,如果ABAPer在程序性能優(yōu)化方面沒有經(jīng)驗,甚至報表根本就無法得出,而且會嚴(yán)重消耗R/3資源.
(8).用戶頻繁變動需求原因,為了某種分析目的,用戶要求報表經(jīng)常增加幾個新字段那是很正常的,不同用戶甚至對于同一個報表的取數(shù)邏輯的理解不同是正常的,不同領(lǐng)導(dǎo)對相似報表要求的報表行項目可能是不同的,不同企業(yè)對同一業(yè)務(wù)在R/3的處理方式是不一致.
一個在線分析系統(tǒng)OLAP系統(tǒng)(你可認(rèn)為DW系統(tǒng)也就是一個OLAP系統(tǒng))應(yīng)該有這么些系統(tǒng):
(1).市場和銷售分析(Marketing and Sales analysis)
(2).基于歷史數(shù)據(jù)的營銷(Database marketing)
(3).各種財務(wù)報告與合并報表(Financial reporting and consolidation)
(4).各類成本費用分析類的管理報告(Management reporting)
(5).利益率分析(Profitability analysis)
(6).質(zhì)量分析(Quality analysis)
(7).存貨分析(Inventory analysis)
......
一個大型ERP廠商應(yīng)該能同時提供完善的在線分析系統(tǒng)又不影響在線交易系統(tǒng)性能.
集團(tuán)企業(yè)都會尋找整合的高度集成的管理軟件,而不是簡單的反應(yīng)式的零散的管理產(chǎn)品.
說到OLAP,就談下OLTP,數(shù)據(jù)處理大致可以分成兩大類:在線事務(wù)處理OLTP(on-line tran
SAction processing,R/3可看成一個OLTP系統(tǒng))、在線分析處理OLAP(On-Line Analytical Processing)。OLTP是傳統(tǒng)的關(guān)系型數(shù)據(jù)庫的主要應(yīng)用,主要是基本的、日常的事務(wù)處理。OLAP是
數(shù)據(jù)倉庫系統(tǒng)的主要應(yīng)用,支持復(fù)雜的分析操作,側(cè)重決策支持,并且提供直觀易懂的查詢結(jié)果。
摘自某網(wǎng)絡(luò)的一段描述, 下表列出了OLTP與OLAP之間的比較。
OLTP
OLAP
用戶
操作人員,低層管理人員
決策人員,高級管理人員
功能
日常操作處理
分析決策
DB 設(shè)計
面向應(yīng)用
面向主題
數(shù)據(jù)
當(dāng)前的, 最新的細(xì)節(jié)的, 二維的分立的
歷史的, 聚集的, 多維的集成的, 統(tǒng)一的
存取
讀/寫數(shù)十條記錄
讀上百萬條記錄
工作單位
簡單的事務(wù)
復(fù)雜的查詢
用戶數(shù)
上千個
上百個
DB 大小
100MB-GB
100GB-TB
OLAP產(chǎn)品和OLAP準(zhǔn)則
最早的OLAP產(chǎn)品可以追溯到1970,但真正形成一個大的OLAP市場則是在90年代以后.
聯(lián)機(jī)分析處理 (
OLAP) 的概念最早是由關(guān)系
數(shù)據(jù)庫之父E.F.Codd于1993年提出的,他同時提出了關(guān)于OLAP的12條準(zhǔn)則,OLAP作為一
類產(chǎn)品同
聯(lián)機(jī)事務(wù)處理 (
OLTP) 明顯區(qū)分開來。
Codd提出OLAP的12條準(zhǔn)則來描述OLAP系統(tǒng):
準(zhǔn)則1 OLAP模型必須提供多維概念
視圖準(zhǔn)則2 透明性準(zhǔn)則
準(zhǔn)則3 存取能力推測
準(zhǔn)則4 穩(wěn)定的報表能力
準(zhǔn)則5 客戶/服務(wù)器
體系結(jié)構(gòu)準(zhǔn)則6 維的等同性準(zhǔn)則
準(zhǔn)則7 動態(tài)的稀疏矩陣處理準(zhǔn)則
準(zhǔn)則8 多用戶支持能力準(zhǔn)則
準(zhǔn)則9 非受限的跨維操作
準(zhǔn)則10 直觀的數(shù)據(jù)操縱
準(zhǔn)則11 靈活的報表生成(目前BEx對中國式的格式報表顯然不靈活)
準(zhǔn)則12 不受限的維與聚集層次(受數(shù)據(jù)庫限制一般DW提供13個自定義緯度).
DW&OLAP的關(guān)系
數(shù)據(jù)倉庫與OLAP的關(guān)系是互補(bǔ)的,現(xiàn)代OLAP系統(tǒng)一般以數(shù)據(jù)倉庫作為基礎(chǔ),即從數(shù)據(jù)倉庫中抽取詳細(xì)數(shù)據(jù)的一個子集并經(jīng)過必要的聚集存儲到OLAP存儲器中供前端分析工具讀取
讓我們回過頭來結(jié)合某BW來理解數(shù)據(jù)倉庫的這幾個重要特征:
(1).面向主題(Subject_orient)
主題是一個針對一決策問題而設(shè)置的分析對象,比如一個銷售利潤分析,如果你在SAP中寫過類似報表,你可能需要使用客戶,物料,銷售訂單和客戶發(fā)票等表,
加一些數(shù)據(jù)冗余。
(2).集成的數(shù)據(jù)(Integrated)
數(shù)據(jù)倉庫中存貯的數(shù)據(jù)是從原來分散的各個子系統(tǒng)中提取出來的,但并不是原有數(shù)據(jù)的簡單拷貝,而是經(jīng)過統(tǒng)一、綜合。其一,數(shù)據(jù)倉庫的數(shù)據(jù)不能直接從原有數(shù)據(jù)庫系統(tǒng)中得到。原有數(shù)據(jù)庫系統(tǒng)記錄的是每一項業(yè)務(wù)處理的流水帳,這些數(shù)據(jù)不適合于分析處理,在進(jìn)入數(shù)據(jù)倉庫之前必須經(jīng)過綜合、計算,拋棄分析處理不需要的數(shù)據(jù)項,增加一些可能涉及的外部數(shù)據(jù),在BW中這些可以通過各種手段比如更新規(guī)則,傳輸規(guī)則實現(xiàn).
其二,數(shù)據(jù)倉庫每一個主題所對應(yīng)的源數(shù)據(jù)在原分散數(shù)據(jù)庫中有許多重復(fù)或不一致的地方,必須將這些數(shù)據(jù)轉(zhuǎn)換成全局統(tǒng)一的定義,消除不一致和錯誤的地方,以保證數(shù)據(jù)的質(zhì)量。
對源數(shù)據(jù)的集成是數(shù)據(jù)倉庫建設(shè)中最關(guān)鍵,也是最復(fù)雜的一步。
(3).數(shù)據(jù)更新性
數(shù)據(jù)倉庫的數(shù)據(jù)一般不可更新,最終用戶只能通過分析工具進(jìn)行查詢、分析,一般不允許直接修改其中存貯的數(shù)據(jù),管理員可定期刪除歸檔一些歷史數(shù)據(jù)
(4)數(shù)據(jù)隨時間不斷變化(Time_variant)
數(shù)據(jù)倉庫中的數(shù)據(jù)隨時間變化而定期地被更新,每隔一段固定的時間間隔后,運作數(shù)據(jù)庫系統(tǒng)中產(chǎn)生的數(shù)據(jù)被抽取、轉(zhuǎn)換以后集成到數(shù)據(jù)倉庫中,可以采用完全和增量更新,可以根據(jù)需要自定義更新周期.
.一些常見BI術(shù)語(來自網(wǎng)絡(luò))
BI
商業(yè)智能(Business Intelligence),指數(shù)據(jù)倉庫相關(guān)技術(shù)與應(yīng)用的通稱。指利用各種智能技術(shù),來提升企業(yè)的商業(yè)競爭力。
Data mart
數(shù)據(jù)集市,或者叫做"小數(shù)據(jù)倉庫"。如果說數(shù)據(jù)倉庫是建立在企業(yè)級的數(shù)據(jù)模型之上的話。那么數(shù)據(jù)集市就是企業(yè)級數(shù)據(jù)倉庫的一個子集,他主要面向部門級業(yè)務(wù),并且只是面向某個特定的主題。數(shù)據(jù)集市可以在一定程度上緩解訪問數(shù)據(jù)倉庫的瓶頸。
數(shù)據(jù)集市:是用來分析特定業(yè)務(wù)主題或功能目標(biāo)的公司數(shù)據(jù)的專門項目的數(shù)據(jù)收集。這些數(shù)據(jù)是粒度化的,歷史的,整體的,全體的.
數(shù)據(jù)集市面向部門級業(yè)務(wù),并且只是面向某個特定的主題。數(shù)據(jù)集市可以在一定程度上緩解訪問數(shù)據(jù)倉庫的瓶頸。
自下而上,"Think Big,Start Small".
另一種解決數(shù)據(jù)庫方案早期問題的方法是數(shù)據(jù)集市的發(fā)展
(1)獨立的數(shù)據(jù)集市
一個獨立的數(shù)據(jù)集市是建立使用一個中央的、企業(yè)級數(shù)據(jù)庫作為數(shù)據(jù)來源的數(shù)據(jù)集市。
所特別建立的單獨的數(shù)據(jù)集市是供單個的部門使用或者是為了滿足面向?qū)iT項目的分析方案的需要,
但是大多數(shù)機(jī)構(gòu)在其商務(wù)智能環(huán)境中愿意擁有多個數(shù)據(jù)集市。然而,不管在機(jī)構(gòu)內(nèi)有多少數(shù)據(jù)集市存在,
所有的數(shù)據(jù)集市的數(shù)據(jù)都來自EDW。
(2)非獨立的數(shù)據(jù)集市
(3)作為數(shù)據(jù)庫的數(shù)據(jù)集市
“數(shù)據(jù)集市是倉庫”,在數(shù)據(jù)庫團(tuán)體中一種學(xué)院派的想法是數(shù)據(jù)倉庫是由公司中的數(shù)據(jù)集市構(gòu)成的。
用這種方式,公司建立數(shù)據(jù)集市,終端用戶能夠獲取任何或者全部所需獲得的數(shù)據(jù)來完成分析。
該理論認(rèn)為,數(shù)據(jù)集市建立起來更簡便快捷,一旦建立,就從數(shù)據(jù)集市中獲取數(shù)據(jù),而不用建立
和維護(hù)一個中央數(shù)據(jù)倉庫。就像在數(shù)據(jù)倉庫等技術(shù)領(lǐng)域大多數(shù)理論那樣,這個概念有一些優(yōu)點,
但是緊隨其后的是顯而易見的問題。
一個最重要的考慮是仍然打算確保在所有這些數(shù)據(jù)集市中獲取的數(shù)據(jù)能被正確使用和整合。
在當(dāng)今世界最艱巨的任務(wù)是方案的何去何從,以及執(zhí)行官、經(jīng)理、員工在商務(wù)和技術(shù)兩方面何去何從等。
企業(yè)級數(shù)據(jù)倉庫(EDW,Enterprise Data
Warehouse),對于數(shù)據(jù)集市的定位也基本形成共識,那就是數(shù)據(jù)集市應(yīng)該從屬于企業(yè)級數(shù)據(jù)倉庫。
所謂EDW,基本的要求是整個企業(yè)能夠共享統(tǒng)一的數(shù)據(jù)存儲模型,為各級業(yè)務(wù)人員提供一致的信息視圖。
實施時可以先按照需求的輕重緩急選擇部分業(yè)務(wù)主題,然后逐步擴(kuò)展到涵蓋全部業(yè)務(wù)。
BI要想大做小,從最迫切的業(yè)務(wù)入手。無論是上哪種管理軟件,幾乎都會聽到同樣的聲音:不要貪大求全,從最迫切的業(yè)務(wù)入手,BI也不例外,它可以做成一個獨立的龐大系統(tǒng),把企業(yè)中所有的業(yè)務(wù)數(shù)據(jù)全部放在一個數(shù)據(jù)倉庫里,進(jìn)行多維分析;也可以將其嵌入到各項單獨的業(yè)務(wù)數(shù)據(jù)中,進(jìn)行單獨的業(yè)務(wù)分析。咨詢顧問的意見是先把最緊要的業(yè)務(wù)管理起來,以便迅速響應(yīng)市場需求,做出最佳決策。積累了一定經(jīng)驗后,再逐漸增加BI系統(tǒng)繼續(xù)對其他業(yè)務(wù)進(jìn)行決策分析,這樣可以在一定程度上規(guī)避風(fēng)險,因為上BI也要進(jìn)行流程的重整,
缺少數(shù)據(jù)分析師,這些數(shù)據(jù)將從何而來.Think Big , Start small.
但是我們根本都沒有think . ROLAP
基于Codd的12條準(zhǔn)則,各個軟件開發(fā)廠家見仁見智,其中一個流派,認(rèn)為可以沿用關(guān)系型數(shù)據(jù)庫來存儲多維數(shù)據(jù),于是,基于稀疏矩陣表示方法的星型結(jié)構(gòu)(star schema)就出現(xiàn)了。后來又演化出雪花結(jié)構(gòu)。為了與多維數(shù)據(jù)庫相區(qū)別,則把基于關(guān)系型數(shù)據(jù)庫的OLAP稱為Relational OLAP,簡稱ROLAP。代表產(chǎn)品有Informix Metacube、Microsoft SQL Server OLAP Services。
MOLAP
Arbor Software嚴(yán)格遵照Codd的定義,自行建立了多維數(shù)據(jù)庫,來存放聯(lián)機(jī)分析系統(tǒng)數(shù)據(jù),開創(chuàng)了多維數(shù)據(jù)存儲的先河,后來的很多家公司紛紛采用多維數(shù)據(jù)存儲。被人們稱為Muiltdimension OLAP,簡稱MOLAP,代表產(chǎn)品有Hyperion(原Arbor Software) Essbase、Showcase Strategy等。
1.ROLAP
ROLAP將分析用的多維數(shù)據(jù)存儲在關(guān)系數(shù)據(jù)庫中并根據(jù)應(yīng)用的需要有選擇的定義一批實視圖作為表也存儲在關(guān)系數(shù)據(jù)庫中。不必要將每一個SQL查詢都作為實視圖保存,只定義那些應(yīng)用頻率比較高、計算工作量比較大的查詢作為實視圖。對每個針對OLAP服務(wù)器的查詢,優(yōu)先利用已經(jīng)計算好的實視圖來生成查詢結(jié)果以提高查詢效率。同時用作ROLAP存儲器的RDBMS也針對OLAP作相應(yīng)的優(yōu)化,比如并行存儲、并行查詢、并行數(shù)據(jù)管理、基于成本的查詢優(yōu)化、位圖索引、SQL的OLAP擴(kuò)展(cube,rollup)等等。
2.MOLAP
MOLAP將OLAP分析所用到的多維數(shù)據(jù)物理上存儲為多維數(shù)組的形式,形成“立方體”的結(jié)構(gòu)。維的屬性值被映射成多維數(shù)組的下標(biāo)值或下標(biāo)的范圍,而總結(jié)數(shù)據(jù)作為多維數(shù)組的值存儲在數(shù)組的單元中。由于MOLAP采用了新的存儲結(jié)構(gòu),從物理層實現(xiàn)起,因此又稱為物理OLAP(PhysicalOLAP);而ROLAP主要通過一些
軟件工具或中間軟件實現(xiàn),物理層仍采用關(guān)系數(shù)據(jù)庫的存儲結(jié)構(gòu),因此稱為虛擬OLAP(VirtualOLAP)。
3.HOLAP
由于MOLAP和ROLAP有著各自的優(yōu)點和缺點(如下表所示),且它們的結(jié)構(gòu)迥然不同,這給分析人員設(shè)計OLAP結(jié)構(gòu)提出了難題。為此一個新的OLAP結(jié)構(gòu)——混合型OLAP(HOLAP)被提出,它能把MOLAP和ROLAP兩種結(jié)構(gòu)的優(yōu)點結(jié)合起來。迄今為止,對HOLAP還沒有一個正式的定義。但很明顯,HOLAP結(jié)構(gòu)不應(yīng)該是MOLAP與ROLAP結(jié)構(gòu)的簡單組合,而是這兩種結(jié)構(gòu)技術(shù)優(yōu)點的有機(jī)結(jié)合,能滿足用戶各種復(fù)雜的分析請求。
Client OLAP
相對于Server OLAP而言。部分分析工具廠家建議把部分?jǐn)?shù)據(jù)下載到本地,為用戶提供本地的多維分析。代表產(chǎn)品有Brio Designer,Business Object。
DSS
決策支持系統(tǒng)(Decision Support System),相當(dāng)于基于數(shù)據(jù)倉庫的應(yīng)用。決策支持就是在收集所有有關(guān)數(shù)據(jù)和信息,經(jīng)過加工整理,來為企業(yè)決策管理層提供信息,為決策者的決策提供依據(jù)。
ETL
數(shù)據(jù)抽?。‥xtract)、轉(zhuǎn)換(Transform)、清洗(Cleansing)、裝載(Load)的過程。構(gòu)建數(shù)據(jù)倉庫的重要一環(huán),用戶從數(shù)據(jù)源抽取出所需的數(shù)據(jù),經(jīng)過數(shù)據(jù)清洗,最終按照預(yù)先定義好的數(shù)據(jù)倉庫模型,將數(shù)據(jù)加載到數(shù)據(jù)倉庫中去。
Ad hoc query
即席查詢,數(shù)據(jù)庫應(yīng)用最普遍的一種查詢,利用數(shù)據(jù)倉庫技術(shù),可以讓用戶隨時可以面對數(shù)據(jù)庫,獲取所希望的數(shù)據(jù)。
EIS
主管信息系統(tǒng)(Executive Information System),指為了滿足無法專注于計算機(jī)技術(shù)的領(lǐng)導(dǎo)人員的信息查詢需求,而特意制定的以簡單的圖形界面訪問數(shù)據(jù)倉庫的一種應(yīng)用。
BPR
業(yè)務(wù)流程重整(Business Process Reengineering),指利用數(shù)據(jù)倉庫技術(shù),發(fā)現(xiàn)并糾正企業(yè)業(yè)務(wù)流程中的弊端的一項工作,數(shù)據(jù)倉庫的重要作用之一。
Data Mining
數(shù)據(jù)挖掘,Data Mining是一種決策支持過程,它主要基于AI、機(jī)器學(xué)習(xí)、統(tǒng)計學(xué)等技術(shù),高度自動化地分析企業(yè)原有的數(shù)據(jù),做出歸納性的推理,從中挖掘出潛在的模式,預(yù)測客戶的行為,幫助企業(yè)的決策者調(diào)整市場策略,減少風(fēng)險,做出正確的決策
CRM
客戶關(guān)系管理(Customer Relationship Management),數(shù)據(jù)倉庫是以數(shù)據(jù)庫技術(shù)為基礎(chǔ)但又與傳統(tǒng)的數(shù)據(jù)庫應(yīng)用有著本質(zhì)區(qū)別的新技術(shù),CRM就是基于數(shù)據(jù)倉庫技術(shù)的一種新應(yīng)用。但是,從商業(yè)運作的角度來講,CRM其實應(yīng)該算是一個古老的"應(yīng)用"了。比如,酒店對客人信息的管理,如果某個客人是某酒店的老主顧,那么該酒店很自然地會知道這位客人的某些習(xí)慣和喜好,如是否喜歡靠路邊,是否吸煙,是否喜歡大床,喜歡什么樣的早餐,等等。當(dāng)客人再次光臨時,不用客人自己提出來,酒店就會提供客人所喜歡的房間和服務(wù)。這就是一種CRM。
Meta Data
元數(shù)據(jù),關(guān)于數(shù)據(jù)倉庫的數(shù)據(jù),指在數(shù)據(jù)倉庫建設(shè)過程中所產(chǎn)生的有關(guān)數(shù)據(jù)源定義,目標(biāo)定義,轉(zhuǎn)換規(guī)則等相關(guān)的關(guān)鍵數(shù)據(jù)。同時元數(shù)據(jù)還包含關(guān)于數(shù)據(jù)含義的商業(yè)信息,所有這些信息都應(yīng)當(dāng)妥善保存,并很好地管理。為數(shù)據(jù)倉庫的發(fā)展和使用提供方便。
Data Mart, 數(shù)據(jù)集市
也被稱為“小數(shù)據(jù)倉庫”,DW的一個子集,主要面向部門級業(yè)務(wù)。例如在銷售部門的應(yīng)用時,可能不需要分析某個產(chǎn)品的原材料。分析地區(qū)稅收時,不需要分析能源消耗情況。
OLAP, Online Analytical Processing, 聯(lián)機(jī)分析處理
也稱為多維分析?;谝粋€主題“立方體”,該“立方體”若干個維,例如時間維,區(qū)域維,產(chǎn)品維等。這些維又可以進(jìn)行分層。例如時間維包含年、旬、月、周、天,甚至可以到小時這一層。在“立方體”中存儲的事實值,某些值就是合計值了,在進(jìn)行查詢時,就不需要利用SQL將所有記錄搜出來,再進(jìn)行統(tǒng)計運算,這樣就大大提高了最基本的查詢能力了。同時,利用一些聚類算法等,還能發(fā)現(xiàn)一些“有意思的”結(jié)論,這就是DM/KDD(后面有講)。
OLAP會有另起一篇來詳細(xì)討論,主題的選擇,“立方體”的建立,維度設(shè)定,和DM怎樣結(jié)合等都是需要好好思考的。
Ad-hoc Query, 即席查詢
也就是基于前面OLAP中談到的“立方體”,因為統(tǒng)計值直接保存在DW中,就能大大提高查詢能力。快速的查詢,也許就叫即席查詢了,^_^!
....to be continued !
已經(jīng)公開 2007年7月11日 21:05 作者:
SAP屠夫評論
#
常見的幾種數(shù)據(jù)倉庫建模
一.直接報表型(Direct Reporting)
將數(shù)據(jù)倉庫看成是簡單的報表集中器,結(jié)構(gòu)簡單,可多維分析.
二.獨立數(shù)據(jù)集市部門級數(shù)據(jù)倉庫(Data Mart)
認(rèn)為數(shù)據(jù)倉庫就是Data Mart的集合,按照業(yè)務(wù)主題建立數(shù)據(jù)集市,
跨業(yè)務(wù)主題分析不方便.
三.企業(yè)級數(shù)據(jù)倉庫(EDW)
(1)Hub and Spoke(集線器與車輪狀)結(jié)構(gòu).
(2)高度統(tǒng)一的企業(yè)級數(shù)據(jù)倉庫結(jié)構(gòu).
這是目前比較流行的兩種主流數(shù)據(jù)倉庫建模體系,
一.集線器結(jié)構(gòu)(Hub and Spoke)
•這種數(shù)據(jù)模型是建立一中央數(shù)據(jù)倉庫然后根據(jù)報表需求分主題建立數(shù)據(jù)集市.
類似建立報表立方體,不能滿足大型的靈活性的數(shù)據(jù)倉庫.
二.統(tǒng)一的企業(yè)級數(shù)據(jù)倉庫
EDW中包含一層根據(jù)3NF建立的數(shù)據(jù)清洗層,數(shù)據(jù)完整后可以根據(jù)報表需求建立數(shù)據(jù)集市或?qū)⒅醒霐?shù)據(jù)倉庫的數(shù)據(jù)復(fù)制到專門的在線分析的用于報表目的的信息立方體中.
關(guān)于統(tǒng)一的EDW有很多類似邏輯結(jié)構(gòu)圖,這是主流的數(shù)據(jù)倉庫結(jié)構(gòu)圖.
缺點:
假設(shè)建立清洗ODS層,則龐大的清洗邏輯必須在BW中用ABAP編寫更新規(guī)則.
層次太多不方便維護(hù)
2007-07-11 22:11
#
先收了再說
2007-07-12 11:21
#
自打?qū)嵤{駛艙,這篇文章我也看了好多遍了,但數(shù)據(jù)分析不是很好做的.......太多因素.
2007-07-12 14:12
#
我也學(xué)過數(shù)據(jù)挖掘,但總覺得很難!想真正用起來很難!
2007-07-12 16:38
#
"數(shù)據(jù)分析不是很好做的",如果各系統(tǒng)設(shè)計的邏輯關(guān)聯(lián)不緊密,估計做數(shù)據(jù)挖掘的會含冤而死,含恨而亡.
2007-07-12 21:00
#
數(shù)據(jù)倉庫設(shè)計概念
元數(shù)據(jù)對象圖.
元數(shù)據(jù)(Metadata)是關(guān)于數(shù)據(jù)的數(shù)據(jù)。在數(shù)據(jù)倉庫系統(tǒng)中,元數(shù)據(jù)可以幫助數(shù)據(jù)倉庫管理員和數(shù)據(jù)倉庫的開發(fā)人員非常方便地找到他們所關(guān)心的數(shù)據(jù);元數(shù)據(jù)是描述數(shù)據(jù)倉庫內(nèi)數(shù)據(jù)的結(jié)構(gòu)和建立方法的數(shù)據(jù),可將其按用途的不同分為兩類:技術(shù)元數(shù)據(jù)(Technical Metadata)和業(yè)務(wù)元數(shù)據(jù)(Business Metadata)。
技術(shù)元數(shù)據(jù)是存儲關(guān)于數(shù)據(jù)倉庫系統(tǒng)技術(shù)細(xì)節(jié)的數(shù)據(jù),是用于開發(fā)和管理數(shù)據(jù)倉庫使用的數(shù)據(jù).
元數(shù)據(jù)作用
在數(shù)據(jù)倉庫系統(tǒng)中,元數(shù)據(jù)機(jī)制主要支持以下五類系統(tǒng)管理功能:(1)描述哪些數(shù)據(jù)在數(shù)據(jù)倉庫中;(2)定義要進(jìn)入數(shù)據(jù)倉庫中的數(shù)據(jù)和從數(shù)據(jù)倉庫中產(chǎn)生的數(shù)據(jù);(3)記錄根據(jù)業(yè)務(wù)事件發(fā)生而隨之進(jìn)行的數(shù)據(jù)抽取工作時間安排;(4)記錄并檢測系統(tǒng)數(shù)據(jù)一致性的要求和執(zhí)行情況;(5)衡量數(shù)據(jù)質(zhì)量。
元數(shù)據(jù)管理任務(wù)
元數(shù)據(jù)管理的主要任務(wù)有兩個方面:一是負(fù)責(zé)存儲和維護(hù)元數(shù)據(jù)庫中的元數(shù)據(jù);二是負(fù)責(zé)數(shù)據(jù)倉庫建模工具、數(shù)據(jù)獲取工具、前端工具等之間的消息傳遞,協(xié)調(diào)各模塊和工具之間的工作。
你通過RSA1|RSOR查看BW元數(shù)據(jù),
元數(shù)據(jù)管理的主要任務(wù)有兩個方面:一是負(fù)責(zé)存儲和維護(hù)元數(shù)據(jù)庫中的元數(shù)據(jù);二是負(fù)責(zé)數(shù)據(jù)倉庫建模工具、數(shù)據(jù)獲取工具、前端工具等之間的消息傳遞,協(xié)調(diào)各模塊和工具之間的工作。
由以上幾節(jié)我們了解到元數(shù)據(jù)幾乎可以被稱為是數(shù)據(jù)倉庫乃至商業(yè)智能(BI)系統(tǒng)的“靈魂”,正是由于元數(shù)據(jù)在整個數(shù)據(jù)倉庫生命周期中有著重要的地位,各個廠商的數(shù)據(jù)倉庫解決方案都提到了關(guān)于對元數(shù)據(jù)的管理。但遺憾的是對于元數(shù)據(jù)的管理,各個解決方案都沒有明確提出一個完整的管理模式;它們提供的僅僅是對特定的局部元數(shù)據(jù)的管理。
KPI Vs Key Figure .
KPI (Key Performance Indicator)關(guān)鍵績效指標(biāo)是一個可衡量的業(yè)務(wù)指標(biāo),Key Figure是BW的一個技術(shù)術(shù)語,KPI從Key Figure獲得數(shù)據(jù)
信息對象,特征,關(guān)鍵指標(biāo)(InfoObject, Characteristic,Key figure)
信息對象包括特征和關(guān)鍵指標(biāo),一個特征可能有自己的主數(shù)據(jù),文本,層次或復(fù)合超級信息對象. 特征可以理解為關(guān)鍵指標(biāo)的描述,典型地,客戶編碼,物料編碼都是特征,相關(guān)的時間特征,單位也是特征,特征可組成不同維度.
3.關(guān)鍵指標(biāo)一般是數(shù)量,金額, 比如銷售單價,銷售數(shù)量.也可是編號,日期或時間型字段.
如果熟悉PA的朋友一定對KEA5(Characteristic特征),KEA6(Value fields值字段)不陌生.
Key figure 類似value field .
對象關(guān)系映射(
Object Relational Mapping,簡稱
ORM)是一種為了解決
面向?qū)ο?/a>與關(guān)系數(shù)據(jù)庫存在的互不匹配的現(xiàn)象的技術(shù)。簡單的說,ORM是通過使用描述
對象和數(shù)據(jù)庫之間映射的
元數(shù)據(jù),將java
程序中的對象自動持久化到關(guān)系數(shù)據(jù)庫中。本質(zhì)上就是將數(shù)據(jù)從一種形式轉(zhuǎn)換到另外一種形式。這也同時暗示者額外的執(zhí)行開銷;然而,如果ORM作為一種
中間件實現(xiàn),則會有很多機(jī)會做優(yōu)化,而這些在手寫的持久層并不存在。更重要的是用于控制轉(zhuǎn)換的元數(shù)據(jù)需要提供和管理;但是同樣,這些花費要比維護(hù)手寫的方案要少;而且就算是遵守ODMG規(guī)范的對象數(shù)據(jù)庫依然需要
類級別的元數(shù)據(jù)。
對象-關(guān)系映射(
Object/Relation Mapping,簡稱ORM),是隨著面向?qū)ο蟮?a target="_blank" >軟件開發(fā)方法發(fā)展而產(chǎn)生的。面向?qū)ο蟮拈_發(fā)方法是當(dāng)今企業(yè)級應(yīng)用開發(fā)環(huán)境中的主流開發(fā)方法,關(guān)系數(shù)據(jù)庫是企業(yè)級應(yīng)用環(huán)境中永久存放數(shù)據(jù)的主流數(shù)據(jù)存儲系統(tǒng)。對象和關(guān)系數(shù)據(jù)是
業(yè)務(wù)實體的兩種表現(xiàn)形式,業(yè)務(wù)實體在內(nèi)存中表現(xiàn)為對象,在數(shù)據(jù)庫中表現(xiàn)為關(guān)系數(shù)據(jù)。內(nèi)存中的對象之間存在關(guān)聯(lián)和繼承關(guān)系,而在數(shù)據(jù)庫中,關(guān)系數(shù)據(jù)無法直接表達(dá)多對多關(guān)聯(lián)和繼承關(guān)系。因此,對象-關(guān)系映射(ORM)系統(tǒng)一般以中間件的形式存在,主要實現(xiàn)程序?qū)ο蟮疥P(guān)系數(shù)據(jù)庫數(shù)據(jù)的映射。
面向?qū)ο笫菑?a target="_blank" >軟件工程基本原則(如耦合、聚合、封裝)的基礎(chǔ)上發(fā)展起來的,而關(guān)系數(shù)據(jù)庫則是從數(shù)學(xué)理論發(fā)展而來的,兩套理論存在顯著的區(qū)別。為了解決這個不匹配的現(xiàn)象,對象關(guān)系映射技術(shù)應(yīng)運而生。
讓我們從O/R開始。字母O起源于"對象"(Object),而R則來自于"關(guān)系"(Relational)。幾乎所有的程序里面,都存在對象和關(guān)系數(shù)據(jù)庫。在業(yè)務(wù)邏輯層和
用戶界面層中,我們是面向?qū)ο蟮摹.?dāng)對象信息發(fā)生變化的時候,我們需要把對象的信息保存在關(guān)系數(shù)據(jù)庫中。
如上圖:
1. 數(shù)據(jù)抽取工具(ETL Service):把業(yè)務(wù)系統(tǒng)中的數(shù)據(jù)抽取、轉(zhuǎn)換、集成到數(shù)據(jù)倉庫中,如Ardent的DataStage、CA(原Platinum)的Decision Base和ETI的Extract等。這些工具僅提供了技術(shù)元數(shù)據(jù),幾乎沒有提供對業(yè)務(wù)元數(shù)據(jù)的支持。
2. 前端展現(xiàn)工具(Presentation Service):包括OLAP分析、報表和商業(yè)智能工具等,如MicroStrategy的DSS Agent、Cognos的PowerPlay、Business Objects的BO,以及Brio等。它們通過把關(guān)系表映射成與業(yè)務(wù)相關(guān)的事實表和維表來支持多維業(yè)務(wù)視圖,進(jìn)而對數(shù)據(jù)倉庫中的數(shù)據(jù)進(jìn)行多維分析。這些工具都提供了業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)相對應(yīng)的語義層。
3. 分析建模工具:為非技術(shù)人員準(zhǔn)備的業(yè)務(wù)建模工具,這些工具可以提供更高層的與特定業(yè)務(wù)相關(guān)的語義。如CA的ERwin、Sysbase的PowerDesigner以及Rational的Rose等。
4. 數(shù)據(jù)存儲工具:元數(shù)據(jù)通常存儲在專用的數(shù)據(jù)庫中,該數(shù)據(jù)庫就如同一個“黑盒子”,外部無法知道這些工具所用到和產(chǎn)生的元數(shù)據(jù)是如何存儲的。還有一類被稱為元數(shù)據(jù)知識庫(Metadata Repository)的工具,它們獨立于其它工具,為元數(shù)據(jù)提供一個集中的存儲空間. 業(yè)務(wù)數(shù)據(jù)則以O(shè)DS或InfoCube保存在數(shù)據(jù)倉庫服務(wù)器.
數(shù)據(jù)倉庫領(lǐng)域中兩個最主要的元數(shù)據(jù)標(biāo)準(zhǔn):
MDC的OIM標(biāo)準(zhǔn)和OMG的CWM標(biāo)準(zhǔn)。
4.1 MDC的OIM存儲模型
MDC成立于1995年,是一個致力于建立與廠商無關(guān)的、不依賴于具體技術(shù)的企業(yè)元數(shù)據(jù)管理標(biāo)準(zhǔn)的非贏利技術(shù)聯(lián)盟,該聯(lián)盟有150多個會員,其中包括微軟和IBM等著名軟件廠商。1999年7月MDC接受了微軟的建議,將OIM作為元數(shù)據(jù)標(biāo)準(zhǔn)。
OIM的目的是通過公共的元數(shù)據(jù)信息來支持不同工具和系統(tǒng)之間數(shù)據(jù)的共享和重用。它涉及了信息系統(tǒng)(從設(shè)計到發(fā)布)的各個階段,通過對元數(shù)據(jù)類型的標(biāo)準(zhǔn)描述來達(dá)到工具和知識庫之間的數(shù)據(jù)共享。OIM所聲明的元數(shù)據(jù)類型都采用統(tǒng)一建模語言UML(Universal Modeling Language)進(jìn)行描述,并被組織成易于使用、易于擴(kuò)展的多個主題范圍(Subject Areas),這些主題范圍包括:
分析與設(shè)計(Analysis and Design):主要用于軟件分析、設(shè)計和建模。該主題范圍又進(jìn)一步劃分為:UML包(Package)、UML擴(kuò)展包、通用元素(Generic Elements)包、公共數(shù)據(jù)類型(Common Data Types)包和實體關(guān)系建模(Entity Relationship Modeling)包等。
對象與組件(Object and? Component):涉及面向?qū)ο箝_發(fā)技術(shù)的方方面面。該主題范圍只包含組件描述建模(Component Description Modeling)包。
數(shù)據(jù)庫與數(shù)據(jù)倉庫(Database and Warehousing):為數(shù)據(jù)庫模式管理、復(fù)用和建立數(shù)據(jù)倉庫提供元數(shù)據(jù)概念支持。該主題范圍進(jìn)一步劃分為:關(guān)系數(shù)據(jù)庫模式(Relational Database Schema)包、OLAP模式(OLAP Schema)包、數(shù)據(jù)轉(zhuǎn)換(Data Transformations)包、面向記錄的數(shù)據(jù)庫模式(Record-Oriented Database Schema)包、XML模式(XML Schema)包和報表定義(Report Definitions)包等。
業(yè)務(wù)工程(Business? Engineering):為企業(yè)運作提供一個藍(lán)圖。該主題范圍進(jìn)一步劃分為:業(yè)務(wù)目標(biāo)(Business Goal)包、組織元素(Organizational Elements)包、業(yè)務(wù)規(guī)則(Business Rules)包、商業(yè)流程(Business Processes)包等。
知識管理(Knowledge? Management):涉及企業(yè)的信息結(jié)構(gòu)。該主題范圍進(jìn)一步劃分為:知識描述(Knowledge Descriptions)包和語義定義(Semantic Definitions)包。
上述主題范圍中的包都是采用UML定義的,可以說UML語言是整個OIM標(biāo)準(zhǔn)的基礎(chǔ)。雖然OIM標(biāo)準(zhǔn)并不是專門針對數(shù)據(jù)倉庫的,但數(shù)據(jù)倉庫是它的主要應(yīng)用領(lǐng)域之一。目前市場上基于該標(biāo)準(zhǔn)的元數(shù)據(jù)管理工具已經(jīng)比較成熟,例如微軟的Repositry和CA的Repositry均采用了OIM標(biāo)準(zhǔn)。
4.2 OMG組織的CWM模型
OMG是一個擁有500多會員的國際標(biāo)準(zhǔn)化組織,著名的CORBA標(biāo)準(zhǔn)即出自該組織。公共倉庫元模型(Common Warehouse Metamodel)的主要目的是在異構(gòu)環(huán)境下,幫助不同的數(shù)據(jù)倉庫工具、平臺和元數(shù)據(jù)知識庫進(jìn)行元數(shù)據(jù)交換。2001年3月,OMG頒布了CWM 1.0標(biāo)準(zhǔn)。CWM模型既包括元數(shù)據(jù)存儲,也包括元數(shù)據(jù)交換,它是基于以下三個工業(yè)標(biāo)準(zhǔn)制定的:
(1) UML:它對CWM模型進(jìn)行建模。
(2) MOF(元對象設(shè)施):它是OMG元模型和元數(shù)據(jù)的存儲標(biāo)準(zhǔn),提供在異構(gòu)環(huán)境下對元數(shù)據(jù)知識庫的訪問接口。
(3) XMI(XML元數(shù)據(jù)交換):它可以使元數(shù)據(jù)以XML文件流的方式進(jìn)行交換。
OMG元數(shù)據(jù)知識庫體系結(jié)構(gòu)如圖3所示。
CWM為數(shù)據(jù)倉庫和商業(yè)智能(BI)工具之間共享元數(shù)據(jù),制定了一整套關(guān)于語法和語義的規(guī)范。它主要包含以下四個方面的規(guī)范:
(1) CWM元模型(Metamodel):描述數(shù)據(jù)倉庫系統(tǒng)的模型;
(2) CWM XML:CWM元模型的XML表示;
(3) CWM DTD:DW/BI共享元數(shù)據(jù)的交換格式
(4) CWM IDL:DW/BI共享元數(shù)據(jù)的應(yīng)用程序訪問接口(API)
下面重點討論CWM元模型的組成,它與OIM規(guī)范一樣,也是由很多包組成的。組成CWM元模型的包結(jié)構(gòu)如圖4所示。
(1) 元模型(MetaModel)包:構(gòu)造和描述其它CWM包中的元模型類的基礎(chǔ)。它是UML的一個子集,由以下四個子包組成:
a) 核心(Core)包:它的類和關(guān)聯(lián)是該模型的核心,其它所有的包都以它為基礎(chǔ)。
b) 行為(Behavioral)包:包括描述CWM對象行為的類與關(guān)聯(lián),并且它為描述所定義的行為提供了基礎(chǔ)。
c) 關(guān)系(Relationships)包:包括描述CWM對象之間關(guān)系的類與關(guān)聯(lián)。
d) 實例(Instance)包:包括表示CWM分類器(Classfier)的類與關(guān)聯(lián)。
(2) 基礎(chǔ)包(Foundation):它包括表示CWM概念和結(jié)構(gòu)的模型元素,這些模型元素又可被其他CWM包所共享,它由以下六個子包組成:
a) 業(yè)務(wù)信息(Business Information)包:包括表示模型元素業(yè)務(wù)信息的類與關(guān)聯(lián)。
b) 數(shù)據(jù)類型(Data Types)包:包括表示建模者可以用來創(chuàng)建所需數(shù)據(jù)類型的結(jié)構(gòu)的類與關(guān)聯(lián)。
c) 表達(dá)式(Expressions)包:包括表示表達(dá)式樹的類與關(guān)聯(lián)。
d) 關(guān)鍵字和索引(Keys and Indexes)包:包括表示鍵和索引的類與關(guān)聯(lián)。
e) 軟件發(fā)布(Software Deployment)包:包括軟件如何在數(shù)據(jù)倉庫中發(fā)布的類與關(guān)聯(lián)。
f) 類型映射(Type Mapping)包:包括表示不同系統(tǒng)之間數(shù)據(jù)類型映射的類與關(guān)聯(lián)。
(3) 資源包(Resource):用于描述數(shù)據(jù)資源的包,它包括以下四個子包:
a) 關(guān)系(Relational)包:包括表示關(guān)系型數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
b) 記錄(Record)包:包括表示記錄型數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
c) 多維(Multidimensional)包:包括表示多維數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
d) XML包:包括表示XML數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
(4) 分析(Analysis)包:它由以下五個子包組成:
a) 轉(zhuǎn)換(Transformation)包:包括表示數(shù)據(jù)抽取和轉(zhuǎn)換工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
b) OLAP包:包括表示OLAP工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
c) 數(shù)據(jù)挖掘(Data Mining)包:包括表示數(shù)據(jù)挖掘工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
d) 信息可視化(Information Visualization)包:包括表示信息可視化工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
e) 業(yè)務(wù)術(shù)語(Business Nomenclature)包:包括表示分類業(yè)務(wù)的元數(shù)據(jù)的類與關(guān)聯(lián)。
(5) 管理(Management)包:用于描述數(shù)據(jù)倉庫管理的包,它包括以下兩個子包:
a) 倉庫過程(Warehouse Process)包:包括表示倉庫過程的元數(shù)據(jù)的類與關(guān)聯(lián)。
b) 倉庫操作(Warehouse Operation)包:包括表示倉庫操作結(jié)果的元數(shù)據(jù)的類與關(guān)聯(lián)。
在數(shù)據(jù)抽取過程中,數(shù)據(jù)從各個業(yè)務(wù)系統(tǒng)中被統(tǒng)一轉(zhuǎn)換存儲到中央數(shù)據(jù)倉庫中。CWM中的轉(zhuǎn)換模型定義了數(shù)據(jù)在源和目的之間移動的過程,其中不僅包括源和目標(biāo)之間的參數(shù),還包括轉(zhuǎn)換中的業(yè)務(wù)邏輯。這些業(yè)務(wù)邏輯可能包括一些商業(yè)規(guī)則、類庫甚至是用戶腳本。數(shù)據(jù)倉庫如果有一個規(guī)范的轉(zhuǎn)換模型將給工具軟件廠商和專業(yè)服務(wù)提供商帶來極大的好處,例如,按照統(tǒng)一的規(guī)范廠商可以設(shè)計一個通用的模型從標(biāo)準(zhǔn)ERP包中抽取數(shù)據(jù)。工具廠商甚至可以隨軟件提供成熟的模型,集成商也可以將一個模型應(yīng)用到多個項目中。
最終用戶同樣也能從CWM中受益,在使用商業(yè)智能分析軟件進(jìn)行多維分析的時候,用戶往往會對數(shù)據(jù)的含義和來源產(chǎn)生疑問。CWM能夠提供這些信息,用戶可以清楚地看到數(shù)據(jù)來自哪個系統(tǒng),并且是如何組成的。
4.3 CWM與OIM之間的關(guān)系
上兩節(jié)分別介紹了與數(shù)據(jù)倉庫相關(guān)的兩個主要標(biāo)準(zhǔn),CWM實際上是專門為數(shù)據(jù)倉庫元數(shù)據(jù)而制定的一套標(biāo)準(zhǔn),而OIM并不是針對數(shù)據(jù)倉庫元數(shù)據(jù)的。OIM所關(guān)注的元數(shù)據(jù)的范圍比CWM要廣,CWM只限定于數(shù)據(jù)倉庫領(lǐng)域,而OIM模型包括有:分析與設(shè)計模型、對象與組件、數(shù)據(jù)庫與數(shù)據(jù)倉庫、商業(yè)工程、知識管理等五個領(lǐng)域。OIM與CWM在建模語言的選擇(都選擇UML當(dāng)做自己的描述語言)、數(shù)據(jù)庫模型的支持、OLAP分析模型的支持、數(shù)據(jù)轉(zhuǎn)換模型的支持方面都比較一致;但是OIM并不是基于元對象設(shè)施(MOF)的,這意味著用OIM所描述的元數(shù)據(jù)需要通過其它的接口才能訪問,而CWM所描述的元數(shù)據(jù)可以通過CORBA IDL來訪問;在數(shù)據(jù)交換方面,OIM必須通過特定的轉(zhuǎn)換形成XML文件來交換元數(shù)據(jù),而CWM可以用XMI來進(jìn)行交換。盡管如此,由于OMG與MDC兩個組織的合并,CWM也會與OIM相互兼容以保護(hù)廠商已有的投資。
需要說明的是,MDC與OMG組織已經(jīng)合并,今后所有的工具都將遵循統(tǒng)一的CWM標(biāo)準(zhǔn),不過支持CWM的工具才剛剛出現(xiàn),而支持OIM標(biāo)準(zhǔn)的工具已經(jīng)相對成熟。
5. 元數(shù)據(jù)管理的相關(guān)研究工作
目前元數(shù)據(jù)的研究集中在:數(shù)據(jù)和數(shù)據(jù)庫管理[11,12,13]、元數(shù)據(jù)模型[14,15,16]、數(shù)據(jù)集成[17,18]、元數(shù)據(jù)工具[19]。在各研究領(lǐng)域中都存在一些問題。
在數(shù)據(jù)倉庫的研究課題當(dāng)中,有許多是針對元數(shù)據(jù)的研究。文獻(xiàn)〔5〕描述了一個在數(shù)據(jù)倉庫環(huán)境中,基于微軟的Repositry的、元數(shù)據(jù)驅(qū)動的數(shù)據(jù)轉(zhuǎn)換方法,它包含了技術(shù)元數(shù)據(jù)與業(yè)務(wù)元數(shù)據(jù);文獻(xiàn)〔6〕中描述了一個基于元數(shù)據(jù)的數(shù)據(jù)倉庫安全的解決方法,它只限定在技術(shù)元數(shù)據(jù)級別;更有名的一個研究項目是數(shù)據(jù)倉庫質(zhì)量項目(Data Warehouse Quality),這個項目的核心是通過元數(shù)據(jù)模型來衡量整個數(shù)據(jù)倉庫中的數(shù)據(jù)質(zhì)量。它是基于一個演繹數(shù)據(jù)庫CONCEPTBASE的,并且使用該數(shù)據(jù)庫特定的邏輯語言進(jìn)行描述,目前該項目距離實用的階段還比較遠(yuǎn)。
2007-07-12 21:22
#
數(shù)據(jù)倉庫設(shè)計概念
元數(shù)據(jù)對象圖.
元數(shù)據(jù)(Metadata)是關(guān)于數(shù)據(jù)的數(shù)據(jù)。在數(shù)據(jù)倉庫系統(tǒng)中,元數(shù)據(jù)可以幫助數(shù)據(jù)倉庫管理員和數(shù)據(jù)倉庫的開發(fā)人員非常方便地找到他們所關(guān)心的數(shù)據(jù);元數(shù)據(jù)是描述數(shù)據(jù)倉庫內(nèi)數(shù)據(jù)的結(jié)構(gòu)和建立方法的數(shù)據(jù),可將其按用途的不同分為兩類:技術(shù)元數(shù)據(jù)(Technical Metadata)和業(yè)務(wù)元數(shù)據(jù)(Business Metadata)。
技術(shù)元數(shù)據(jù)是存儲關(guān)于數(shù)據(jù)倉庫系統(tǒng)技術(shù)細(xì)節(jié)的數(shù)據(jù),是用于開發(fā)和管理數(shù)據(jù)倉庫使用的數(shù)據(jù).
元數(shù)據(jù)作用
在數(shù)據(jù)倉庫系統(tǒng)中,元數(shù)據(jù)機(jī)制主要支持以下五類系統(tǒng)管理功能:(1)描述哪些數(shù)據(jù)在數(shù)據(jù)倉庫中;(2)定義要進(jìn)入數(shù)據(jù)倉庫中的數(shù)據(jù)和從數(shù)據(jù)倉庫中產(chǎn)生的數(shù)據(jù);(3)記錄根據(jù)業(yè)務(wù)事件發(fā)生而隨之進(jìn)行的數(shù)據(jù)抽取工作時間安排;(4)記錄并檢測系統(tǒng)數(shù)據(jù)一致性的要求和執(zhí)行情況;(5)衡量數(shù)據(jù)質(zhì)量。
元數(shù)據(jù)管理任務(wù)
元數(shù)據(jù)管理的主要任務(wù)有兩個方面:一是負(fù)責(zé)存儲和維護(hù)元數(shù)據(jù)庫中的元數(shù)據(jù);二是負(fù)責(zé)數(shù)據(jù)倉庫建模工具、數(shù)據(jù)獲取工具、前端工具等之間的消息傳遞,協(xié)調(diào)各模塊和工具之間的工作。
你通過RSA1|RSOR查看BW元數(shù)據(jù),
元數(shù)據(jù)管理的主要任務(wù)有兩個方面:一是負(fù)責(zé)存儲和維護(hù)元數(shù)據(jù)庫中的元數(shù)據(jù);二是負(fù)責(zé)數(shù)據(jù)倉庫建模工具、數(shù)據(jù)獲取工具、前端工具等之間的消息傳遞,協(xié)調(diào)各模塊和工具之間的工作。
由以上幾節(jié)我們了解到元數(shù)據(jù)幾乎可以被稱為是數(shù)據(jù)倉庫乃至商業(yè)智能(BI)系統(tǒng)的“靈魂”,正是由于元數(shù)據(jù)在整個數(shù)據(jù)倉庫生命周期中有著重要的地位,各個廠商的數(shù)據(jù)倉庫解決方案都提到了關(guān)于對元數(shù)據(jù)的管理。但遺憾的是對于元數(shù)據(jù)的管理,各個解決方案都沒有明確提出一個完整的管理模式;它們提供的僅僅是對特定的局部元數(shù)據(jù)的管理。
KPI Vs Key Figure .
KPI (Key Performance Indicator)關(guān)鍵績效指標(biāo)是一個可衡量的業(yè)務(wù)指標(biāo),Key Figure是BW的一個技術(shù)術(shù)語,KPI從Key Figure獲得數(shù)據(jù)
信息對象,特征,關(guān)鍵指標(biāo)(InfoObject, Characteristic,Key figure)
信息對象包括特征和關(guān)鍵指標(biāo),一個特征可能有自己的主數(shù)據(jù),文本,層次或復(fù)合超級信息對象. 特征可以理解為關(guān)鍵指標(biāo)的描述,典型地,客戶編碼,物料編碼都是特征,相關(guān)的時間特征,單位也是特征,特征可組成不同維度.
3.關(guān)鍵指標(biāo)一般是數(shù)量,金額, 比如銷售單價,銷售數(shù)量.也可是編號,日期或時間型字段.
如果熟悉PA的朋友一定對KEA5(Characteristic特征),KEA6(Value fields值字段)不陌生.
Key figure 類似value field .
對象關(guān)系映射(
Object Relational Mapping,簡稱
ORM)是一種為了解決
面向?qū)ο?/a>與關(guān)系數(shù)據(jù)庫存在的互不匹配的現(xiàn)象的技術(shù)。簡單的說,ORM是通過使用描述
對象和數(shù)據(jù)庫之間映射的
元數(shù)據(jù),將java
程序中的對象自動持久化到關(guān)系數(shù)據(jù)庫中。本質(zhì)上就是將數(shù)據(jù)從一種形式轉(zhuǎn)換到另外一種形式。這也同時暗示者額外的執(zhí)行開銷;然而,如果ORM作為一種
中間件實現(xiàn),則會有很多機(jī)會做優(yōu)化,而這些在手寫的持久層并不存在。更重要的是用于控制轉(zhuǎn)換的元數(shù)據(jù)需要提供和管理;但是同樣,這些花費要比維護(hù)手寫的方案要少;而且就算是遵守ODMG規(guī)范的對象數(shù)據(jù)庫依然需要
類級別的元數(shù)據(jù)。
對象-關(guān)系映射(
Object/Relation Mapping,簡稱ORM),是隨著面向?qū)ο蟮?a target="_blank" >軟件開發(fā)方法發(fā)展而產(chǎn)生的。面向?qū)ο蟮拈_發(fā)方法是當(dāng)今企業(yè)級應(yīng)用開發(fā)環(huán)境中的主流開發(fā)方法,關(guān)系數(shù)據(jù)庫是企業(yè)級應(yīng)用環(huán)境中永久存放數(shù)據(jù)的主流數(shù)據(jù)存儲系統(tǒng)。對象和關(guān)系數(shù)據(jù)是
業(yè)務(wù)實體的兩種表現(xiàn)形式,業(yè)務(wù)實體在內(nèi)存中表現(xiàn)為對象,在數(shù)據(jù)庫中表現(xiàn)為關(guān)系數(shù)據(jù)。內(nèi)存中的對象之間存在關(guān)聯(lián)和繼承關(guān)系,而在數(shù)據(jù)庫中,關(guān)系數(shù)據(jù)無法直接表達(dá)多對多關(guān)聯(lián)和繼承關(guān)系。因此,對象-關(guān)系映射(ORM)系統(tǒng)一般以中間件的形式存在,主要實現(xiàn)程序?qū)ο蟮疥P(guān)系數(shù)據(jù)庫數(shù)據(jù)的映射。
面向?qū)ο笫菑?a target="_blank" >軟件工程基本原則(如耦合、聚合、封裝)的基礎(chǔ)上發(fā)展起來的,而關(guān)系數(shù)據(jù)庫則是從數(shù)學(xué)理論發(fā)展而來的,兩套理論存在顯著的區(qū)別。為了解決這個不匹配的現(xiàn)象,對象關(guān)系映射技術(shù)應(yīng)運而生。
讓我們從O/R開始。字母O起源于"對象"(Object),而R則來自于"關(guān)系"(Relational)。幾乎所有的程序里面,都存在對象和關(guān)系數(shù)據(jù)庫。在業(yè)務(wù)邏輯層和
用戶界面層中,我們是面向?qū)ο蟮摹.?dāng)對象信息發(fā)生變化的時候,我們需要把對象的信息保存在關(guān)系數(shù)據(jù)庫中。
如上圖:
1. 數(shù)據(jù)抽取工具(ETL Service):把業(yè)務(wù)系統(tǒng)中的數(shù)據(jù)抽取、轉(zhuǎn)換、集成到數(shù)據(jù)倉庫中,如Ardent的DataStage、CA(原Platinum)的Decision Base和ETI的Extract等。這些工具僅提供了技術(shù)元數(shù)據(jù),幾乎沒有提供對業(yè)務(wù)元數(shù)據(jù)的支持。
2. 前端展現(xiàn)工具(Presentation Service):包括OLAP分析、報表和商業(yè)智能工具等,如MicroStrategy的DSS Agent、Cognos的PowerPlay、Business Objects的BO,以及Brio等。它們通過把關(guān)系表映射成與業(yè)務(wù)相關(guān)的事實表和維表來支持多維業(yè)務(wù)視圖,進(jìn)而對數(shù)據(jù)倉庫中的數(shù)據(jù)進(jìn)行多維分析。這些工具都提供了業(yè)務(wù)元數(shù)據(jù)與技術(shù)元數(shù)據(jù)相對應(yīng)的語義層。
3. 分析建模工具:為非技術(shù)人員準(zhǔn)備的業(yè)務(wù)建模工具,這些工具可以提供更高層的與特定業(yè)務(wù)相關(guān)的語義。如CA的ERwin、Sysbase的PowerDesigner以及Rational的Rose等。
4. 數(shù)據(jù)存儲工具:元數(shù)據(jù)通常存儲在專用的數(shù)據(jù)庫中,該數(shù)據(jù)庫就如同一個“黑盒子”,外部無法知道這些工具所用到和產(chǎn)生的元數(shù)據(jù)是如何存儲的。還有一類被稱為元數(shù)據(jù)知識庫(Metadata Repository)的工具,它們獨立于其它工具,為元數(shù)據(jù)提供一個集中的存儲空間. 業(yè)務(wù)數(shù)據(jù)則以O(shè)DS或InfoCube保存在數(shù)據(jù)倉庫服務(wù)器.
數(shù)據(jù)倉庫領(lǐng)域中兩個最主要的元數(shù)據(jù)標(biāo)準(zhǔn):
MDC的OIM標(biāo)準(zhǔn)和OMG的CWM標(biāo)準(zhǔn)。
4.1 MDC的OIM存儲模型
MDC成立于1995年,是一個致力于建立與廠商無關(guān)的、不依賴于具體技術(shù)的企業(yè)元數(shù)據(jù)管理標(biāo)準(zhǔn)的非贏利技術(shù)聯(lián)盟,該聯(lián)盟有150多個會員,其中包括微軟和IBM等著名軟件廠商。1999年7月MDC接受了微軟的建議,將OIM作為元數(shù)據(jù)標(biāo)準(zhǔn)。
OIM的目的是通過公共的元數(shù)據(jù)信息來支持不同工具和系統(tǒng)之間數(shù)據(jù)的共享和重用。它涉及了信息系統(tǒng)(從設(shè)計到發(fā)布)的各個階段,通過對元數(shù)據(jù)類型的標(biāo)準(zhǔn)描述來達(dá)到工具和知識庫之間的數(shù)據(jù)共享。OIM所聲明的元數(shù)據(jù)類型都采用統(tǒng)一建模語言UML(Universal Modeling Language)進(jìn)行描述,并被組織成易于使用、易于擴(kuò)展的多個主題范圍(Subject Areas),這些主題范圍包括:
分析與設(shè)計(Analysis and Design):主要用于軟件分析、設(shè)計和建模。該主題范圍又進(jìn)一步劃分為:UML包(Package)、UML擴(kuò)展包、通用元素(Generic Elements)包、公共數(shù)據(jù)類型(Common Data Types)包和實體關(guān)系建模(Entity Relationship Modeling)包等。
對象與組件(Object and? Component):涉及面向?qū)ο箝_發(fā)技術(shù)的方方面面。該主題范圍只包含組件描述建模(Component Description Modeling)包。
數(shù)據(jù)庫與數(shù)據(jù)倉庫(Database and Warehousing):為數(shù)據(jù)庫模式管理、復(fù)用和建立數(shù)據(jù)倉庫提供元數(shù)據(jù)概念支持。該主題范圍進(jìn)一步劃分為:關(guān)系數(shù)據(jù)庫模式(Relational Database Schema)包、OLAP模式(OLAP Schema)包、數(shù)據(jù)轉(zhuǎn)換(Data Transformations)包、面向記錄的數(shù)據(jù)庫模式(Record-Oriented Database Schema)包、XML模式(XML Schema)包和報表定義(Report Definitions)包等。
業(yè)務(wù)工程(Business? Engineering):為企業(yè)運作提供一個藍(lán)圖。該主題范圍進(jìn)一步劃分為:業(yè)務(wù)目標(biāo)(Business Goal)包、組織元素(Organizational Elements)包、業(yè)務(wù)規(guī)則(Business Rules)包、商業(yè)流程(Business Processes)包等。
知識管理(Knowledge? Management):涉及企業(yè)的信息結(jié)構(gòu)。該主題范圍進(jìn)一步劃分為:知識描述(Knowledge Descriptions)包和語義定義(Semantic Definitions)包。
上述主題范圍中的包都是采用UML定義的,可以說UML語言是整個OIM標(biāo)準(zhǔn)的基礎(chǔ)。雖然OIM標(biāo)準(zhǔn)并不是專門針對數(shù)據(jù)倉庫的,但數(shù)據(jù)倉庫是它的主要應(yīng)用領(lǐng)域之一。目前市場上基于該標(biāo)準(zhǔn)的元數(shù)據(jù)管理工具已經(jīng)比較成熟,例如微軟的Repositry和CA的Repositry均采用了OIM標(biāo)準(zhǔn)。
4.2 OMG組織的CWM模型
OMG是一個擁有500多會員的國際標(biāo)準(zhǔn)化組織,著名的CORBA標(biāo)準(zhǔn)即出自該組織。公共倉庫元模型(Common Warehouse Metamodel)的主要目的是在異構(gòu)環(huán)境下,幫助不同的數(shù)據(jù)倉庫工具、平臺和元數(shù)據(jù)知識庫進(jìn)行元數(shù)據(jù)交換。2001年3月,OMG頒布了CWM 1.0標(biāo)準(zhǔn)。CWM模型既包括元數(shù)據(jù)存儲,也包括元數(shù)據(jù)交換,它是基于以下三個工業(yè)標(biāo)準(zhǔn)制定的:
(1) UML:它對CWM模型進(jìn)行建模。
(2) MOF(元對象設(shè)施):它是OMG元模型和元數(shù)據(jù)的存儲標(biāo)準(zhǔn),提供在異構(gòu)環(huán)境下對元數(shù)據(jù)知識庫的訪問接口。
(3) XMI(XML元數(shù)據(jù)交換):它可以使元數(shù)據(jù)以XML文件流的方式進(jìn)行交換。
OMG元數(shù)據(jù)知識庫體系結(jié)構(gòu)如圖3所示。
CWM為數(shù)據(jù)倉庫和商業(yè)智能(BI)工具之間共享元數(shù)據(jù),制定了一整套關(guān)于語法和語義的規(guī)范。它主要包含以下四個方面的規(guī)范:
(1) CWM元模型(Metamodel):描述數(shù)據(jù)倉庫系統(tǒng)的模型;
(2) CWM XML:CWM元模型的XML表示;
(3) CWM DTD:DW/BI共享元數(shù)據(jù)的交換格式
(4) CWM IDL:DW/BI共享元數(shù)據(jù)的應(yīng)用程序訪問接口(API)
下面重點討論CWM元模型的組成,它與OIM規(guī)范一樣,也是由很多包組成的。組成CWM元模型的包結(jié)構(gòu)如圖4所示。
(1) 元模型(MetaModel)包:構(gòu)造和描述其它CWM包中的元模型類的基礎(chǔ)。它是UML的一個子集,由以下四個子包組成:
a) 核心(Core)包:它的類和關(guān)聯(lián)是該模型的核心,其它所有的包都以它為基礎(chǔ)。
b) 行為(Behavioral)包:包括描述CWM對象行為的類與關(guān)聯(lián),并且它為描述所定義的行為提供了基礎(chǔ)。
c) 關(guān)系(Relationships)包:包括描述CWM對象之間關(guān)系的類與關(guān)聯(lián)。
d) 實例(Instance)包:包括表示CWM分類器(Classfier)的類與關(guān)聯(lián)。
(2) 基礎(chǔ)包(Foundation):它包括表示CWM概念和結(jié)構(gòu)的模型元素,這些模型元素又可被其他CWM包所共享,它由以下六個子包組成:
a) 業(yè)務(wù)信息(Business Information)包:包括表示模型元素業(yè)務(wù)信息的類與關(guān)聯(lián)。
b) 數(shù)據(jù)類型(Data Types)包:包括表示建模者可以用來創(chuàng)建所需數(shù)據(jù)類型的結(jié)構(gòu)的類與關(guān)聯(lián)。
c) 表達(dá)式(Expressions)包:包括表示表達(dá)式樹的類與關(guān)聯(lián)。
d) 關(guān)鍵字和索引(Keys and Indexes)包:包括表示鍵和索引的類與關(guān)聯(lián)。
e) 軟件發(fā)布(Software Deployment)包:包括軟件如何在數(shù)據(jù)倉庫中發(fā)布的類與關(guān)聯(lián)。
f) 類型映射(Type Mapping)包:包括表示不同系統(tǒng)之間數(shù)據(jù)類型映射的類與關(guān)聯(lián)。
(3) 資源包(Resource):用于描述數(shù)據(jù)資源的包,它包括以下四個子包:
a) 關(guān)系(Relational)包:包括表示關(guān)系型數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
b) 記錄(Record)包:包括表示記錄型數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
c) 多維(Multidimensional)包:包括表示多維數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
d) XML包:包括表示XML數(shù)據(jù)資源的元數(shù)據(jù)的類與關(guān)聯(lián)。
(4) 分析(Analysis)包:它由以下五個子包組成:
a) 轉(zhuǎn)換(Transformation)包:包括表示數(shù)據(jù)抽取和轉(zhuǎn)換工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
b) OLAP包:包括表示OLAP工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
c) 數(shù)據(jù)挖掘(Data Mining)包:包括表示數(shù)據(jù)挖掘工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
d) 信息可視化(Information Visualization)包:包括表示信息可視化工具的元數(shù)據(jù)的類與關(guān)聯(lián)。
e) 業(yè)務(wù)術(shù)語(Business Nomenclature)包:包括表示分類業(yè)務(wù)的元數(shù)據(jù)的類與關(guān)聯(lián)。
(5) 管理(Management)包:用于描述數(shù)據(jù)倉庫管理的包,它包括以下兩個子包:
a) 倉庫過程(Warehouse Process)包:包括表示倉庫過程的元數(shù)據(jù)的類與關(guān)聯(lián)。
b) 倉庫操作(Warehouse Operation)包:包括表示倉庫操作結(jié)果的元數(shù)據(jù)的類與關(guān)聯(lián)。
在數(shù)據(jù)抽取過程中,數(shù)據(jù)從各個業(yè)務(wù)系統(tǒng)中被統(tǒng)一轉(zhuǎn)換存儲到中央數(shù)據(jù)倉庫中。CWM中的轉(zhuǎn)換模型定義了數(shù)據(jù)在源和目的之間移動的過程,其中不僅包括源和目標(biāo)之間的參數(shù),還包括轉(zhuǎn)換中的業(yè)務(wù)邏輯。這些業(yè)務(wù)邏輯可能包括一些商業(yè)規(guī)則、類庫甚至是用戶腳本。數(shù)據(jù)倉庫如果有一個規(guī)范的轉(zhuǎn)換模型將給工具軟件廠商和專業(yè)服務(wù)提供商帶來極大的好處,例如,按照統(tǒng)一的規(guī)范廠商可以設(shè)計一個通用的模型從標(biāo)準(zhǔn)ERP包中抽取數(shù)據(jù)。工具廠商甚至可以隨軟件提供成熟的模型,集成商也可以將一個模型應(yīng)用到多個項目中。
最終用戶同樣也能從CWM中受益,在使用商業(yè)智能分析軟件進(jìn)行多維分析的時候,用戶往往會對數(shù)據(jù)的含義和來源產(chǎn)生疑問。CWM能夠提供這些信息,用戶可以清楚地看到數(shù)據(jù)來自哪個系統(tǒng),并且是如何組成的。
4.3 CWM與OIM之間的關(guān)系
上兩節(jié)分別介紹了與數(shù)據(jù)倉庫相關(guān)的兩個主要標(biāo)準(zhǔn),CWM實際上是專門為數(shù)據(jù)倉庫元數(shù)據(jù)而制定的一套標(biāo)準(zhǔn),而OIM并不是針對數(shù)據(jù)倉庫元數(shù)據(jù)的。OIM所關(guān)注的元數(shù)據(jù)的范圍比CWM要廣,CWM只限定于數(shù)據(jù)倉庫領(lǐng)域,而OIM模型包括有:分析與設(shè)計模型、對象與組件、數(shù)據(jù)庫與數(shù)據(jù)倉庫、商業(yè)工程、知識管理等五個領(lǐng)域。OIM與CWM在建模語言的選擇(都選擇UML當(dāng)做自己的描述語言)、數(shù)據(jù)庫模型的支持、OLAP分析模型的支持、數(shù)據(jù)轉(zhuǎn)換模型的支持方面都比較一致;但是OIM并不是基于元對象設(shè)施(MOF)的,這意味著用OIM所描述的元數(shù)據(jù)需要通過其它的接口才能訪問,而CWM所描述的元數(shù)據(jù)可以通過CORBA IDL來訪問;在數(shù)據(jù)交換方面,OIM必須通過特定的轉(zhuǎn)換形成XML文件來交換元數(shù)據(jù),而CWM可以用XMI來進(jìn)行交換。盡管如此,由于OMG與MDC兩個組織的合并,CWM也會與OIM相互兼容以保護(hù)廠商已有的投資。
需要說明的是,MDC與OMG組織已經(jīng)合并,今后所有的工具都將遵循統(tǒng)一的CWM標(biāo)準(zhǔn),不過支持CWM的工具才剛剛出現(xiàn),而支持OIM標(biāo)準(zhǔn)的工具已經(jīng)相對成熟。
5. 元數(shù)據(jù)管理的相關(guān)研究工作
目前元數(shù)據(jù)的研究集中在:數(shù)據(jù)和數(shù)據(jù)庫管理[11,12,13]、元數(shù)據(jù)模型[14,15,16]、數(shù)據(jù)集成[17,18]、元數(shù)據(jù)工具[19]。在各研究領(lǐng)域中都存在一些問題。
在數(shù)據(jù)倉庫的研究課題當(dāng)中,有許多是針對元數(shù)據(jù)的研究。文獻(xiàn)〔5〕描述了一個在數(shù)據(jù)倉庫環(huán)境中,基于微軟的Repositry的、元數(shù)據(jù)驅(qū)動的數(shù)據(jù)轉(zhuǎn)換方法,它包含了技術(shù)元數(shù)據(jù)與業(yè)務(wù)元數(shù)據(jù);文獻(xiàn)〔6〕中描述了一個基于元數(shù)據(jù)的數(shù)據(jù)倉庫安全的解決方法,它只限定在技術(shù)元數(shù)據(jù)級別;更有名的一個研究項目是數(shù)據(jù)倉庫質(zhì)量項目(Data Warehouse Quality),這個項目的核心是通過元數(shù)據(jù)模型來衡量整個數(shù)據(jù)倉庫中的數(shù)據(jù)質(zhì)量。它是基于一個演繹數(shù)據(jù)庫CONCEPTBASE的,并且使用該數(shù)據(jù)庫特定的邏輯語言進(jìn)行描述,目前該項目距離實用的階段還比較遠(yuǎn)。
2007-07-12 21:22
#
簡單介紹一下BI的大概設(shè)計思路及其它和ERP的關(guān)系,首先熟悉下面幾個概念,如下圖:
1.源系統(tǒng)(Source System)
源系統(tǒng)可以是ERP System 或non-ERP的桌面文件和第三方數(shù)據(jù)庫,源系統(tǒng)告訴數(shù)據(jù)倉庫到什么地方和如何抽取數(shù)據(jù).
2.信息源和數(shù)據(jù)源(InfoSource Vs DataSource)
你簡單理解信息就是高效組織的有用的數(shù)據(jù),數(shù)據(jù)倉庫(Data Warehouse)的任務(wù)不僅僅是數(shù)據(jù)存儲(Data Storage),而是要將收集的各種數(shù)據(jù)變成有用的信息提供決策支持,所以你就很容易理解為什么ERP邊叫數(shù)據(jù)源,而數(shù)據(jù)倉庫這邊稱信息源.
數(shù)據(jù)源頭抽取結(jié)構(gòu)的字段叫字段,信息源這邊則叫做信息對象,如果要說區(qū)別,信息對象顯然不僅僅是一個簡單字段這樣,前面我們已經(jīng)知道特征和關(guān)鍵指標(biāo)都成為信息對象,比如會計科目特征,它對應(yīng)到會計科目字段,但是會計科目這個特征還有相關(guān)屬性,文本和層次.
信息源和數(shù)據(jù)源的關(guān)系前面已經(jīng)提及是一對多的關(guān)系,我們還知道一個源系統(tǒng)的數(shù)據(jù)源還必須Replicate后才能在DW中生成結(jié)構(gòu)從而分配給信息源.
數(shù)據(jù)源
常用的四種數(shù)據(jù)源類型:
1.業(yè)務(wù)數(shù)據(jù)類型,通過它傳輸R/3業(yè)務(wù)交易數(shù)據(jù).
2.屬特類型,特征屬性就是特征的主數(shù)據(jù).
3.文本類型,特征的文本.
4.特征的層次節(jié)點類型(目前BW版本層次只能使用Direct update).
信息源包括這么幾個主要部件:(1)通信結(jié)構(gòu)(2)傳輸結(jié)構(gòu)(3)傳輸規(guī)則(4)傳輸方法
3.通信結(jié)構(gòu)(Communication Structure)
通信結(jié)構(gòu)是數(shù)據(jù)從信息源傳輸?shù)綌?shù)據(jù)目標(biāo)的通道
4.傳輸結(jié)構(gòu)(Transfer Structure)
傳輸結(jié)構(gòu)將R/3或非R/3數(shù)據(jù)源的字段映射到信息源的信息對象.
注意兩個東西:數(shù)據(jù)源->信息源 字段->信息對象
5.抽取結(jié)構(gòu)
R/3將各模塊保存在的數(shù)據(jù)庫表的數(shù)據(jù)抽取后暫時存放的一個結(jié)構(gòu),
你簡單理解為數(shù)據(jù)源包括兩個部分:1.抽取結(jié)構(gòu) 2.傳輸結(jié)構(gòu)和相關(guān)傳輸程序
6.傳輸規(guī)則(Transfer rule)
在設(shè)計數(shù)據(jù)倉庫時,盡量注意避免讓用戶自己編寫代碼, 一個成熟的產(chǎn)品應(yīng)該是讓用戶脫離技術(shù)只注重業(yè)務(wù)實現(xiàn).
簡單地說,數(shù)據(jù)源在ERP邊充當(dāng)數(shù)據(jù)通道的角色,真正的源數(shù)據(jù)(Data Source)當(dāng)然就是ERP的業(yè)務(wù)交易表格, 而信息源(Infosource)則在DW/BI系統(tǒng)充當(dāng)數(shù)據(jù)通道角色, 最后數(shù)據(jù)保存到數(shù)據(jù)倉庫的存儲裝置,通常是ODS或Infocube .
實際上ERP系統(tǒng)設(shè)計同樣,本人做ERP開發(fā)多年,到現(xiàn)在尚且厭煩開發(fā),ERP實施過程中的開發(fā)和快速實施實際上是嚴(yán)重矛盾的...
在DW/BI系統(tǒng)中,還有幾個重要概念:ODS/DSO/Infocube....
2007-07-12 22:05
#
ETL的設(shè)計
數(shù)據(jù)抽取工具的設(shè)計無意是件非常困難的事情.如何設(shè)計一個好的ETTL,Kimball老兄提供了如下一些經(jīng)驗:
Something ETL Designer must know:
Analysis
1. What is a logical data mapping and what does it mean to the ETL team?
2. What are the primary goals of the data discovery phase of the data warehouse project?
3. How is the system-of-record determined?
Architecture
4. What are the four basic Data Flow steps of an ETL process?
5. What are the permissible data structures for the data staging area? Briefly describe the pros
and cons of each.
6. When should data be set to disk for safekeeping during the ETL?
Extract
7. Describe techniques for extracting from heterogeneous data sources.
8. What is the best approach for handling ERP source data?
9. Explain the pros and cons of communicating with databases natively versus ODBC.
10. Describe three change data capture (CDC) practices and the pros and cons of each.
Data Quality
11. What are the four broad categories of data quality checks? Provide an implementation
technique for each.
12. At which stage of the ETL should data be profiled?
13. What are the essential deliverables of the data quality portion of ETL?
14. How can data quality be quantified in the data warehouse?
Building mappings
15. What are surrogate keys? Explain how the surrogate key pipeline works.
16. Why do dates require special treatment during the ETL process?
17. Explain the three basic delivery steps for conformed dimensions.
18. Name the three fundamental fact grains and describe an ETL approach for each.
19. How are bridge tables delivered to classify groups of dimension records associated to a single
fact?
20. How does late arriving data affect dimensions and facts? Share techniques for handling each.
Metadata
21. Describe the different types of ETL metadata and provide examples of each.
22. Share acceptable mechanisms for capturing operational metadata.
23. Offer techniques for sharing business and technical metadata.
Optimization/Operations
24. State the primary types of tables found in a data warehouse and the order which they must be
loaded to enforce referential integrity.
25. What are the characteristics of the four levels of the ETL support model?
26. What steps do you take to determine the bottleneck of a slow running ETL process?
27. Describe how to estimate the load time of a large ETL job.
Real Time ETL
28. Describe the architecture options for implementing real-time ETL.
29. Explain the different real-time approaches and how they can be applied in different business
scenarios.
30. Outline some challenges faced by real-time ETL and describe how to overcome them.
From <<ETL Toolkit>>--- Written By Kimball
轉(zhuǎn)換和加載 (ETL, Extract, Transform, Load) 是構(gòu)建數(shù)據(jù)倉庫過程中最復(fù)雜也是至關(guān)重要的一個步驟,我們通常用兩種辦法來處理ETL流程: 一種是異步(Asynchronous) ETL方式, 也稱為文本文件(Flat file)方式。另外一種是同步(Synchronous) ETL方式,也稱為直接傳輸 (Direct transfer) 方式。根據(jù)項目的各自特點,合理選擇恰當(dāng)?shù)臄?shù)據(jù)抽取流程,確定抽取過程中的監(jiān)督核查機(jī)制,對于DW項目的成功可以起到事半功倍的作用。
同步并不等于實時,ERP系統(tǒng)是一個7×24小時都有新數(shù)據(jù)插入的系統(tǒng),如何解決同步呢?一種解決辦法是設(shè)置一個時間區(qū)間,定義每次抽取的開始和結(jié)束時間值,數(shù)據(jù)抽取可采用增量抽取的方式,系統(tǒng)記錄最近上一次的數(shù)據(jù)抽取時間。
2007-07-12 22:12
#
操作數(shù)據(jù)存儲ODS和信息立方體比較
聯(lián)系:
1.都是數(shù)據(jù)目標(biāo)
2.都是數(shù)據(jù)存儲裝置(Storage Services)
3.都可建立查詢,ODS選上允許查詢
4.目前的BW版本已經(jīng)支持連接ODS和信息立方體成為多立方體.
多立方體只是一個結(jié)構(gòu),建立多立方體必須注意數(shù)據(jù)重復(fù),
如果你熟悉多表Select就很容易明白此點.
ODS特點:
1.ODS寫數(shù)據(jù)可能更快,信息立方體肯定速度要慢.
2.ODS是簡單的扁平的關(guān)系性表
3.數(shù)據(jù)裝載必須通過PSA.
4.默認(rèn)的更新規(guī)則是覆蓋方式
5.ODS成為數(shù)據(jù)建模的一個中間層,除非必要,不建立中間ODS,但是業(yè)務(wù)往往都是需要的
InfoCube特點:
1.基于星型結(jié)構(gòu),事實表在中央.
2.周圍是維度表便于多維分析
3.維度的建立是有講究的,比如同一維度表的數(shù)據(jù)不要出現(xiàn)多對多.
4.可以使用聚集
5.默認(rèn)的更新方式是添加.
DS層,一般大家都能夠認(rèn)同它是一種操作型比較強(qiáng)的、未保留歷史或者保留近期歷史的數(shù)據(jù)。所謂操作型,是相對分析型而言的。后者多是匯總的、便于分析統(tǒng)計的結(jié)構(gòu)。操作型的另一個特點就是經(jīng)常會被更新,而分析型數(shù)據(jù)很少如此。然而,對于ODS的認(rèn)識,也有不同。
常見的爭議包括: ODS是否應(yīng)該被最終用戶訪問?ODS存在的目的是僅僅供DW層獲取經(jīng)過清洗的數(shù)據(jù),還是能夠讓用戶從中得到統(tǒng)計報表?關(guān)于前一個問題,在筆者以前做經(jīng)營分析的時候,就曾遇到這樣的爭議;關(guān)于后一個問題,如果讓它僅僅具備前一項功能,倒是結(jié)構(gòu)清晰、易于管理,是一種好的設(shè)計風(fēng)格,但恐怕不能滿足用戶靈活的需求。而如果可以讓用戶查詢統(tǒng)計,可能造成它統(tǒng)計的數(shù)據(jù)和DW統(tǒng)計的數(shù)據(jù)不一致。
對于DW層,一般大家都會認(rèn)同,這是保留歷史數(shù)據(jù)的地方。但它是按照第三范式還是維度建模呢?當(dāng)然,最大的不同就是:是需要一個中心DW,還是一個由若干數(shù)據(jù)集市組成的“虛擬”的DW。至于DM層,對此基本有一致的認(rèn)同,這是面向最終用戶分析統(tǒng)計的,采用維度建模再好不過。
可因為對DW層建模方法的不同觀點,因此也就出來了所謂CDW的提法。想想,如果DW是按照第三范式建模,而DM是按照維度建模的話,那么它們之間該如何過渡?看上去,CDW確實也有存在的必要,在這個區(qū)域,需要形成滿足總線架構(gòu)所需的一致性維度(Confirmed Dimension)和一致性事實(Confirmed Fact)。
但問題是,第三范式和維度建模難道就真得水火不相容?筆者更相信一個道理—架構(gòu)中沒有絕對的設(shè)計原則。所謂第三范式,只是指出一種理想的ER(實體-關(guān)系模型)設(shè)計模式,但實際做設(shè)計時,設(shè)計師大多會去做一些平衡,他們也許會說,“為了性能、應(yīng)用方便,會考慮適當(dāng)?shù)娜哂唷?#8221;可這適當(dāng)冗余不也就破壞了第三范式嗎?而且這個“適當(dāng)”誰也說不準(zhǔn)是多少。因此,可以理解EDW并不是絕對的第三范式,而所謂維度建模又能夠和第三范式有多少沖突呢?在其本身概念里面,星型模式是一種不太符合第三范式的ER結(jié)構(gòu),但只是不“太”,如果改成雪花模式,是不是也就是第三范式了呢?