1. 技術(shù)路徑
3.1技術(shù)架構(gòu)設(shè)計(jì)
3.1.1后臺(tái)架構(gòu)
- ETL流程
ETL處理流程主要由4個(gè)步驟:從源系統(tǒng)中抽取數(shù)據(jù)(Extract)绘迁、清洗(cleaning)、一致化轉(zhuǎn)化(conforming)嚎卫、數(shù)據(jù)提交(delivering)到呈現(xiàn)服務(wù)器上,以及對(duì)ETL過程和后臺(tái)環(huán)境進(jìn)行管理(managing)。
過程中字管,需要進(jìn)行的工作包括:對(duì)多種類型的源數(shù)據(jù)格式的理解,數(shù)據(jù)探查信不、數(shù)據(jù)清洗嘲叔、單元測試、系統(tǒng)測試抽活、進(jìn)入生產(chǎn)環(huán)節(jié)硫戈、文檔編寫。
數(shù)倉開發(fā)過程有70%時(shí)間花費(fèi)在ETL過程中下硕。
- 抽取
根據(jù)業(yè)務(wù)需求丁逝,確定要抽取哪些數(shù)據(jù)、應(yīng)用哪些篩選條件梭姓。數(shù)據(jù)抽取相關(guān)的ETL功能:數(shù)據(jù)探查霜幼、變化數(shù)據(jù)捕捉、抽取系統(tǒng)誉尖。
- 清洗和一致化
數(shù)據(jù)從源系統(tǒng)抽取后罪既,進(jìn)行清洗和一致化處理,將數(shù)據(jù)轉(zhuǎn)換成對(duì)業(yè)務(wù)有價(jià)值铡恕、可使用的琢感、高質(zhì)量的狀態(tài)。例如探熔,將舊的活動(dòng)編碼轉(zhuǎn)換成新的編碼驹针、為預(yù)售查詢生成虛擬用戶ID。
清洗和一致化階相關(guān)的ETL服務(wù):數(shù)據(jù)清洗系統(tǒng)诀艰、錯(cuò)誤時(shí)間跟蹤牌捷、審計(jì)維的創(chuàng)建、復(fù)制涡驮、一致化暗甥。
- 提交
在對(duì)數(shù)據(jù)進(jìn)行了適當(dāng)?shù)那逑春托?zhǔn)后,ETL過程將數(shù)據(jù)提交給呈現(xiàn)服務(wù)器捉捅。本階段的服務(wù)包括:緩慢變化維(SCD)管理器撤防、代理鍵發(fā)生器、分級(jí)管理器棒口、專用維度管理器寄月、事實(shí)表生成器辜膝、代理鍵管道、多值橋接表生成器漾肮、延遲到達(dá)數(shù)據(jù)處理器厂抖、維度管理器系統(tǒng)、事表提供者系統(tǒng)克懊、聚集生成器忱辅、OLAP多維數(shù)據(jù)集生成器、數(shù)據(jù)傳播管理器谭溉。
- ETL管理服務(wù)
包括:作業(yè)調(diào)度器墙懂、備份系統(tǒng)、回復(fù)和重啟扮念、版本控制损搬、版本遷移、工作流程監(jiān)視柜与、排序巧勤、沿襲和依賴、問題自調(diào)整弄匕、并行處理和管道處理颅悉、合規(guī)性管理器、安全性粘茄、元數(shù)據(jù)知識(shí)庫。
- ETL數(shù)據(jù)存儲(chǔ)
實(shí)際的數(shù)據(jù)存儲(chǔ)取決于具體的業(yè)務(wù)需求秕脓、源系統(tǒng)的穩(wěn)定性柒瓣、數(shù)據(jù)抽取和轉(zhuǎn)換過程的復(fù)雜性。根據(jù)具體情況吠架,確定數(shù)據(jù)的存儲(chǔ)形式芙贫、備份存儲(chǔ)時(shí)間周期。
數(shù)據(jù)質(zhì)量和存儲(chǔ):在ETL流程中解決數(shù)據(jù)質(zhì)量問題傍药,存儲(chǔ)清洗之前和之后的版本磺平,便于進(jìn)行數(shù)據(jù)審計(jì)和驗(yàn)證。
3.1.2呈現(xiàn)服務(wù)器架構(gòu)
1.呈現(xiàn)服務(wù)器要滿足的業(yè)務(wù)需求:
- 支持訪問所有主要業(yè)務(wù)過程數(shù)據(jù)
- 支持訪問匯總數(shù)據(jù)和原子數(shù)據(jù)
- 支持單一來源的分析數(shù)據(jù)
- 設(shè)計(jì)細(xì)節(jié)原子數(shù)據(jù)維度模型:
- 建立基于原子層的業(yè)務(wù)過程維度模型拐辽。
- 建議將原子層數(shù)據(jù)存入維度模型拣挪,而不是規(guī)范模型中。原子層數(shù)據(jù)集使用企業(yè)總線舉證定義的一致性維度和事實(shí)創(chuàng)建俱诸。因?yàn)榫S度模型是最好的用戶訪問模型菠劝,用戶希望訪問細(xì)節(jié)數(shù)據(jù),便于跟蹤維度隨時(shí)間的變化情況睁搭。
- 建立在關(guān)系型數(shù)據(jù)庫而不是OLAP引擎中赶诊,因?yàn)殛P(guān)系型數(shù)據(jù)庫能提供數(shù)據(jù)管理功能笼平、易于訪問、靈活舔痪。
3.建設(shè)聚集和聚集導(dǎo)航器:
建立聚集邏輯層寓调。改善匯總層性能,提高分析查詢性能锄码《嵊ⅲ可以在關(guān)系數(shù)據(jù)庫、OLAP服務(wù)器或應(yīng)用服務(wù)器上巍耗。
建立萬聚集后秋麸,需要配套建立聚集導(dǎo)航器,用于優(yōu)化查詢速度炬太。接收基于原子層維度模型的用戶查詢灸蟆,如果查詢可以使用較小的聚集表來應(yīng)答,則重寫查詢并提交數(shù)據(jù)庫引擎亲族。此過程對(duì)用戶是無感知的炒考。
4.呈現(xiàn)服務(wù)器包含以下具體內(nèi)容:
- 具有單一字段代理鍵的反規(guī)范化維度表
- 類型1、2和3的緩慢變化維
- 多值維和層次結(jié)構(gòu)維
- 基于企業(yè)總線結(jié)構(gòu)的一致性維度和事實(shí)
- 事務(wù)處理霎迫、周期快照和累計(jì)快照事實(shí)表
- 面向性能的聚集斋枢、星型索引、位圖索引和OLAP
- 可選的實(shí)時(shí)BI應(yīng)用程序?qū)S脽岱謪^(qū)
3.1.3前臺(tái)架構(gòu)
- BI應(yīng)用程序類型:直接訪問查詢知给、標(biāo)注報(bào)表瓤帚、分析性應(yīng)用程序、儀表板和記分卡涩赢、數(shù)據(jù)挖掘和模型運(yùn)營BI戈次、BI門戶和自定義前端、移動(dòng)端筒扒、即時(shí)BI
- BI管理服務(wù):元數(shù)據(jù)服務(wù)怯邪、安全服務(wù)、監(jiān)控服務(wù)花墩、查詢管理悬秉、企業(yè)報(bào)表、web和門戶服務(wù)冰蘑。
- BI數(shù)據(jù)存儲(chǔ):存儲(chǔ)的報(bào)表和泌、應(yīng)用程序服務(wù)器緩存、局部用戶數(shù)據(jù)庫祠肥、一次性的分析性數(shù)據(jù)存儲(chǔ)允跑、分析性應(yīng)用程序產(chǎn)生的結(jié)果、下游系統(tǒng)、數(shù)據(jù)存儲(chǔ)安全聋丝。
3.2設(shè)計(jì)應(yīng)用程序架構(gòu)步驟
1.收集架構(gòu)相關(guān)需求:收集業(yè)務(wù)需求索烹、了解技術(shù)環(huán)境。
2.創(chuàng)建架構(gòu)含義文檔:
3.創(chuàng)建架構(gòu)模型
4.確定架構(gòu)實(shí)現(xiàn)的各個(gè)階段
5.設(shè)計(jì)和描述子系統(tǒng)
6.創(chuàng)建應(yīng)用程序架構(gòu)設(shè)計(jì)文檔
7.設(shè)計(jì)評(píng)審
3.3產(chǎn)品的選擇和安裝
- 硬件:評(píng)估數(shù)據(jù)規(guī)模弱睦、需要的容量百姓、并發(fā)查詢的負(fù)載量、查詢工作量情況况木、數(shù)據(jù)的吞吐量垒拢、服務(wù)器內(nèi)存及CPU配置。
- DBMS平臺(tái):關(guān)系型DBMS引擎火惊、OLAP引擎的選擇求类?
- ETL工具選擇:
- BI工具:數(shù)據(jù)訪問、BI工具屹耐。