數(shù)據(jù)倉(cāng)庫(kù)-系統(tǒng)設(shè)計(jì)說(shuō)明書(shū).doc
歸一大數(shù)據(jù)平臺(tái)數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)設(shè)計(jì)說(shuō)明書(shū)件控制檔編號(hào)版本號(hào)分冊(cè)名稱(chēng)第冊(cè)/共冊(cè)總頁(yè)數(shù)正文附錄編制審批生效日期修改變更記錄:更改條款及內(nèi)容更改人審批人更改日期創(chuàng)建文檔閻飛謝益武2015-11-5目錄1引言51.1文檔編制目的51.2背景61.3詞匯表61.4參考資料62總體設(shè)計(jì)62.1軟件體系結(jié)構(gòu)62.2系統(tǒng)運(yùn)行體系72.2.1運(yùn)行體系圖72.2.2程序/模塊對(duì)應(yīng)表72.3系統(tǒng)物理結(jié)構(gòu)82.4技術(shù)路線83系統(tǒng)接口設(shè)計(jì)83.1用戶(hù)接口84子系統(tǒng)/模塊設(shè)計(jì)94.1數(shù)據(jù)倉(cāng)庫(kù)94.1.1ODL(操作數(shù)據(jù))層設(shè)計(jì)94.1.2BDL(數(shù)據(jù)倉(cāng)庫(kù))層設(shè)計(jì)104.1.3IDL(寬表)層設(shè)計(jì)124.1.4PDL(應(yīng)用)層設(shè)計(jì)134.1.5PUB(維度)層設(shè)計(jì)144.1.6數(shù)據(jù)導(dǎo)出設(shè)計(jì)165數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫(kù)設(shè)計(jì)176外部存儲(chǔ)結(jié)構(gòu)設(shè)計(jì)177故障處理說(shuō)明178尚需解決的問(wèn)題17編寫(xiě)指南: 本模板力圖給出系統(tǒng)設(shè)計(jì)階段可能包括的基本信息,重點(diǎn)在于和需求分析文檔相聯(lián)系。描述系統(tǒng)整體情況。如果某個(gè)章節(jié)在項(xiàng)目或當(dāng)前階段中無(wú)法描述,則可保留其標(biāo)題,注明“不適用”;如果需要對(duì)本模板的個(gè)別章節(jié)詳細(xì)描述,也可將其形成單獨(dú)的文檔,成為本文檔附件。若文檔中的某個(gè)章節(jié)已經(jīng)在其他項(xiàng)目文檔中加以描述,可保留標(biāo)題,注明“參見(jiàn)(文檔編號(hào))(文檔名稱(chēng))(條款)”。形成正式文檔后須刪除斜體字內(nèi)容。0報(bào)告編制要求這里列出本系統(tǒng)設(shè)計(jì)報(bào)告編制的經(jīng)驗(yàn)性要求,須由系統(tǒng)設(shè)計(jì)人員參照其進(jìn)行裁剪以確定本次報(bào)告編制的相關(guān)規(guī)定。序號(hào)要求1對(duì)各種結(jié)構(gòu)圖要求采用Visio繪制。2軟件體系結(jié)構(gòu)圖通常包括:子系統(tǒng)實(shí)體、子系統(tǒng)間數(shù)據(jù)流、相關(guān)說(shuō)明。3軟件結(jié)構(gòu)圖通常包括:模塊實(shí)體、模塊間數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、相關(guān)說(shuō)明。4運(yùn)行體系圖包括:進(jìn)程實(shí)體、啟動(dòng)順序、并發(fā)性、數(shù)據(jù)交換。5物理結(jié)構(gòu)圖包括:物理節(jié)點(diǎn)實(shí)體、物理節(jié)點(diǎn)分布、物理節(jié)點(diǎn)描述、物理節(jié)點(diǎn)間相互關(guān)系。6對(duì)數(shù)據(jù)庫(kù)結(jié)構(gòu)的描述要求采用結(jié)構(gòu)圖方式描述,而非采用過(guò)多表格。7數(shù)據(jù)庫(kù)結(jié)構(gòu)圖主要包括:表實(shí)體、表間關(guān)系、主要字段、相關(guān)說(shuō)明四部分。8對(duì)于平臺(tái)性產(chǎn)品,要求有系統(tǒng)層次的劃分圖。9通常要隔離應(yīng)用對(duì)數(shù)據(jù)庫(kù)的直接訪問(wèn)。1 引言1.1 文檔編制目的 指導(dǎo)開(kāi)發(fā)人員進(jìn)行后期的開(kāi)發(fā)工作; 指導(dǎo)測(cè)試人員進(jìn)行解決方案級(jí)的系統(tǒng)測(cè)試;1.2 背景敘述系統(tǒng)設(shè)計(jì)階段的目標(biāo)、作用范圍以及其他應(yīng)向讀者說(shuō)明的理解本報(bào)告所需的背景,如與公司其它軟件之間的聯(lián)系等。1.3 詞匯表列出本系統(tǒng)設(shè)計(jì)說(shuō)明書(shū)中專(zhuān)門(mén)術(shù)語(yǔ)的定義、英文縮寫(xiě)詞的原詞組和意義、項(xiàng)目組內(nèi)達(dá)成一致意見(jiàn)的專(zhuān)用詞匯,同時(shí)要求繼承全部的先前過(guò)程中定義過(guò)的詞匯。詞匯名稱(chēng)詞匯含義備注備注中注明該詞匯的來(lái)源,或有其他更詳細(xì)的解釋的文檔位置;以及對(duì)該詞匯的其他叫法。1.4 參考資料需求規(guī)格說(shuō)明書(shū)系統(tǒng)架構(gòu)設(shè)計(jì)說(shuō)明書(shū)數(shù)據(jù)倉(cāng)庫(kù)命名規(guī)范.docx2 總體設(shè)計(jì)2.1 軟件體系結(jié)構(gòu)2.2 系統(tǒng)物理結(jié)構(gòu)描述使用本軟件系統(tǒng)典型用戶(hù)的物理設(shè)備分布圖及設(shè)備上相應(yīng)基本軟件配置。軟件環(huán)境包括:操作系統(tǒng)、數(shù)據(jù)庫(kù)、以及其它支撐軟件;硬件環(huán)境包括:主機(jī)類(lèi)型、網(wǎng)絡(luò)類(lèi)型、存儲(chǔ)器容量、其它特殊設(shè)備。要求:1)盡量為系統(tǒng)的每個(gè)物理節(jié)點(diǎn)定義一個(gè)和功能相關(guān)的名稱(chēng),名稱(chēng)的含義在詞匯表中說(shuō)明;2)結(jié)合運(yùn)行體系圖中提到的“程序”,將相關(guān)的“運(yùn)行程序”分布到各個(gè)物理節(jié)點(diǎn)中;3)采用網(wǎng)絡(luò)拓?fù)鋱D表示。2.3 技術(shù)路線描述本軟件系統(tǒng)在實(shí)現(xiàn)過(guò)程中所采用的技術(shù)路線、方法。對(duì)較新的技術(shù)給予詳細(xì)的闡述及必要的說(shuō)明,在可能的情況下給出相應(yīng)的技術(shù)參考資料。3 系統(tǒng)接口設(shè)計(jì)3.1 用戶(hù)接口無(wú)接口。4 子系統(tǒng)/模塊設(shè)計(jì)4.1 數(shù)據(jù)倉(cāng)庫(kù)4.1.1 ODL(操作數(shù)據(jù)層)設(shè)計(jì)4.1.1.1 功能描述實(shí)現(xiàn)從外部系統(tǒng)導(dǎo)入數(shù)據(jù)到大數(shù)據(jù)平臺(tái),ODL層數(shù)據(jù)與數(shù)據(jù)源保持一致. 同步方式包括:l 增量同步l 全量同步 數(shù)據(jù)源類(lèi)型包括:l 數(shù)據(jù)庫(kù)4.1.1.2 業(yè)務(wù)流程 流程圖: 流程說(shuō)明:1. 調(diào)度系統(tǒng)定時(shí)啟動(dòng)數(shù)據(jù)同步作業(yè).2. 作業(yè)讀取數(shù)據(jù)同步腳本,遠(yuǎn)程調(diào)用數(shù)據(jù)庫(kù)接口.3. 數(shù)據(jù)庫(kù)接口返回遠(yuǎn)程調(diào)用結(jié)果.4. 接收數(shù)據(jù)庫(kù)接口返回的數(shù)據(jù)集,裝載到ODL本地表. 異常處理:調(diào)度系統(tǒng)捕獲異常并處理 日志說(shuō)明:由調(diào)度系統(tǒng)負(fù)責(zé)記錄作業(yè)(正常和異常)日志. 數(shù)據(jù)源說(shuō)明:1. 通過(guò)視圖封裝需要同步的物理表, 與業(yè)務(wù)進(jìn)行隔離. 當(dāng)物理表發(fā)生變動(dòng),盡量通過(guò)修改視圖兼容. 2. 數(shù)據(jù)同步程序訪問(wèn)數(shù)據(jù)源視圖. 數(shù)據(jù)粒度說(shuō)明:與數(shù)據(jù)源保持完全一致。4.1.1.3 作業(yè)設(shè)計(jì)詳見(jiàn)<<數(shù)據(jù)同步列表.xlsx>>4.1.2 BDL(事物層)設(shè)計(jì)4.1.2.1 功能描述BDL層對(duì)ODL數(shù)據(jù)進(jìn)行清洗、轉(zhuǎn)換,實(shí)現(xiàn)統(tǒng)一維度的數(shù)據(jù)整合。4.1.2.2 業(yè)務(wù)流程 流程圖: 流程說(shuō)明:1. 調(diào)度系統(tǒng)定時(shí)啟動(dòng)數(shù)據(jù)同步作業(yè).2. 作業(yè)讀取ODL表,進(jìn)行數(shù)據(jù)清洗,對(duì)不符合規(guī)則的數(shù)據(jù)進(jìn)行丟棄或轉(zhuǎn)換.3. 將轉(zhuǎn)換后的結(jié)果數(shù)據(jù)裝載到BDL本地表. 異常處理:調(diào)度系統(tǒng)捕獲異常并處理. 日志說(shuō)明:由調(diào)度系統(tǒng)負(fù)責(zé)記錄作業(yè)(正常和異常)日志. 數(shù)據(jù)粒度說(shuō)明:與ODL保持一致.4.1.2.3 作業(yè)設(shè)計(jì)詳見(jiàn)<<數(shù)據(jù)倉(cāng)庫(kù)轉(zhuǎn)換文檔.xlsx>>4.1.3 IDL(寬表層)設(shè)計(jì)4.1.3.1 功能描述在IDL層對(duì)BDL事實(shí)表按主題進(jìn)行合并, 形成一次寫(xiě)多次讀的寬表, 降低系統(tǒng)整體開(kāi)銷(xiāo). 并實(shí)際根據(jù)需要進(jìn)行用戶(hù)級(jí)粒度的聚合, 進(jìn)一步提高查詢(xún)效率.4.1.3.2 業(yè)務(wù)流程 流程圖: 流程說(shuō)明:1. 調(diào)度系統(tǒng)定時(shí)啟動(dòng)數(shù)據(jù)同步作業(yè).2. 按主題讀取相關(guān)BDL表, 進(jìn)行關(guān)聯(lián), 盡量補(bǔ)齊維度字段, 生成事物級(jí)寬表.3. 按用戶(hù)級(jí)粒度聚合, 生成用戶(hù)級(jí)寬表. 異常處理:調(diào)度系統(tǒng)捕獲異常并處理 日志說(shuō)明:由調(diào)度系統(tǒng)負(fù)責(zé)記錄作業(yè)(正常和異常)日志. 數(shù)據(jù)粒度說(shuō)明:1. 事物級(jí)粒度.2. 用戶(hù)級(jí)粒度.4.1.3.3 作業(yè)設(shè)計(jì)詳見(jiàn)<<數(shù)據(jù)倉(cāng)庫(kù)轉(zhuǎn)換文檔.xlsx>>4.1.4 PDL(應(yīng)用層)設(shè)計(jì)4.1.4.1 功能描述PDL層按業(yè)務(wù)需求, IDL寬表匯總查詢(xún)生成各種結(jié)果表.4.1.4.2 業(yè)務(wù)流程 流程圖: 流程說(shuō)明:1. 調(diào)度系統(tǒng)定時(shí)啟動(dòng)數(shù)據(jù)同步作業(yè).2. 讀取IDL寬表,按業(yè)務(wù)需求進(jìn)行聚合,篩選,生成指標(biāo)數(shù)據(jù).3. 結(jié)果寫(xiě)入PDL層結(jié)果表. 異常處理:調(diào)度系統(tǒng)捕獲異常并處理 日志說(shuō)明:由調(diào)度系統(tǒng)負(fù)責(zé)記錄作業(yè)(正常和異常)日志. 數(shù)據(jù)粒度說(shuō)明:1. 按業(yè)務(wù)需求的各種粒度.4.1.4.3 業(yè)務(wù)賬數(shù)據(jù)統(tǒng)計(jì)設(shè)計(jì)業(yè)務(wù)賬數(shù)據(jù)統(tǒng)計(jì)如下特點(diǎn): 業(yè)務(wù)賬指標(biāo)由多個(gè)交易類(lèi)型代碼組合, 一個(gè)交易類(lèi)型代碼對(duì)應(yīng)多個(gè)業(yè)務(wù)指標(biāo), 例如:業(yè)務(wù)賬指標(biāo)A 交易類(lèi)型代碼M00010, M00001,M00002,M00003,業(yè)務(wù)賬指標(biāo)B 交易類(lèi)型代碼M00010, M00011,M00012,M00013,業(yè)務(wù)賬指標(biāo)C 交易類(lèi)型代碼M00000, M00011,M00002,M00023, 隨需求也業(yè)務(wù)變化, 業(yè)務(wù)賬指標(biāo)及其交易類(lèi)型代碼也會(huì)變化. 每個(gè)業(yè)務(wù)賬指標(biāo)統(tǒng)計(jì)算法相同, 只是其交易類(lèi)型代碼組合不同. 每個(gè)業(yè)務(wù)賬指標(biāo)可能會(huì)被多個(gè)報(bào)表調(diào)用,例如“積分總金額”針對(duì)以上特性, 通過(guò)抽象的方法,設(shè)計(jì)對(duì)指標(biāo)(交易類(lèi)型代碼)配置化管理、運(yùn)算統(tǒng)一化技術(shù)的功能, 減少系統(tǒng)維護(hù)成本。4.1.4.4 作業(yè)設(shè)計(jì)詳見(jiàn)<<數(shù)據(jù)倉(cāng)庫(kù)轉(zhuǎn)換文檔.xlsx>>4.1.5 PUB(維度)庫(kù)設(shè)計(jì)4.1.5.1 功能描述采用異步LOOUP方法,主動(dòng)捕獲非法維度數(shù)據(jù),經(jīng)過(guò)人工識(shí)別生成維度數(shù)據(jù).4.1.5.2 業(yè)務(wù)流程 流程圖: 流程說(shuō)明:1. 調(diào)度系統(tǒng)定時(shí)啟動(dòng)數(shù)據(jù)同步作業(yè).2. 異步讀取ODL表和維表,對(duì)比維度映射表查找是否有不存在的維度數(shù)據(jù).3. 如果發(fā)現(xiàn)非法維度數(shù)據(jù),經(jīng)過(guò)人工識(shí)別,寫(xiě)入維度映射表和維度表. 異常處理:調(diào)度系統(tǒng)捕獲異常并處理 日志說(shuō)明:由調(diào)度系統(tǒng)負(fù)責(zé)記錄作業(yè)(正常和異常)日志.4.1.5.3 作業(yè)設(shè)計(jì)詳見(jiàn)<<數(shù)據(jù)倉(cāng)庫(kù)轉(zhuǎn)換文檔.xlsx>>4.1.6 業(yè)務(wù)賬(數(shù)據(jù)集市)庫(kù)4.1.7 數(shù)據(jù)導(dǎo)出設(shè)計(jì)4.1.7.1 功能描述將PDL表和維度導(dǎo)出,同步給mysql庫(kù),供統(tǒng)計(jì)報(bào)表查詢(xún)使用.4.1.7.2 業(yè)務(wù)流程 流程說(shuō)明:1. 調(diào)度系統(tǒng)定時(shí)啟動(dòng)數(shù)據(jù)同步作業(yè).2. 讀取PDL表和維表,將數(shù)據(jù)裝載到MYSQL庫(kù)對(duì)應(yīng)的表中. 異常處理:調(diào)度系統(tǒng)捕獲異常并處理 日志說(shuō)明:由調(diào)度系統(tǒng)負(fù)責(zé)記錄作業(yè)(正常和異常)日志.4.1.7.3 作業(yè)設(shè)計(jì)5 數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫(kù)設(shè)計(jì)詳見(jiàn)<<數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明書(shū).docx>>6 外部存儲(chǔ)結(jié)構(gòu)設(shè)計(jì)說(shuō)明本系統(tǒng)存貯于磁盤(pán)等持久性存貯介質(zhì),而且不是由數(shù)據(jù)庫(kù)管理系統(tǒng)進(jìn)行管理的數(shù)據(jù)的組織結(jié)構(gòu),包括數(shù)據(jù)名稱(chēng)、用途、每個(gè)數(shù)據(jù)項(xiàng)的標(biāo)識(shí)名、類(lèi)型和含義,組織結(jié)構(gòu)、訪問(wèn)方法和存儲(chǔ)要求。7 故障處理說(shuō)明說(shuō)明本系統(tǒng)所采用的基本錯(cuò)誤處理方法和原則,例如:統(tǒng)一采用C+ try-catch錯(cuò)誤方法,所有錯(cuò)誤最終必須以界面形式向用戶(hù)說(shuō)明。用一覽表方式說(shuō)明各類(lèi)可能的錯(cuò)誤或故障出現(xiàn)時(shí)系統(tǒng)的處理方法和補(bǔ)救措施。8 尚需解決的問(wèn)題以列表的形式列出在系統(tǒng)設(shè)計(jì)階段必須解決但尚未解決的問(wèn)題??蓪?duì)問(wèn)題進(jìn)行編號(hào)以便進(jìn)行跟蹤。