IBM數(shù)據(jù)倉庫解決方案(簡).doc
《IBM數(shù)據(jù)倉庫解決方案(簡).doc》由會員分享,可在線閱讀,更多相關(guān)《IBM數(shù)據(jù)倉庫解決方案(簡).doc(24頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1.1 技術(shù)架構(gòu)設(shè)計(jì) 成功地實(shí)施一個(gè)倉庫項(xiàng)目,通常需要很長的時(shí)間。如果僅僅著眼于短期成果,缺乏整體考慮,采用一種不健全的體系結(jié)構(gòu),不僅會增加系統(tǒng)開發(fā)和維護(hù)成本,而且必將對發(fā)揮數(shù)據(jù)倉庫的作用造成不利的影響。因此一個(gè)綜合,清晰的遠(yuǎn)景規(guī)劃及技術(shù)實(shí)施藍(lán)圖將在整個(gè)項(xiàng)目的實(shí)施過程中起到重要作用。 技術(shù)架構(gòu)必須具有高度先進(jìn)性和可擴(kuò)展性,以滿足業(yè)務(wù)需求的不斷變化。一個(gè)完整的數(shù)據(jù)倉庫系統(tǒng)包括數(shù)據(jù)源、數(shù)據(jù)轉(zhuǎn)換區(qū)、數(shù)據(jù)倉庫、數(shù)據(jù)集市、和數(shù)據(jù)展現(xiàn)層,通過數(shù)據(jù)倉庫不同層次之間的加工過程,實(shí)現(xiàn)財(cái)政從數(shù)據(jù)資產(chǎn)向信息資產(chǎn)的轉(zhuǎn)化過程。在不同層次之間的數(shù)據(jù)加工過程需要通過ETL技術(shù)實(shí)現(xiàn),并對整個(gè)過程進(jìn)行有效的元數(shù)據(jù)管理。 基于對需求的理解,基于財(cái)政部的信息系統(tǒng)框架模型基礎(chǔ)之上的財(cái)政決策支持系統(tǒng)技術(shù)架構(gòu)如下圖所示: 如上圖所示意,通過搭建靈活的、可擴(kuò)展技術(shù)架構(gòu),在保持?jǐn)?shù)據(jù)集市穩(wěn)定性的同時(shí),可以不斷增加數(shù)據(jù)源,增加應(yīng)用數(shù)據(jù)層、增加應(yīng)用層,滿足不斷增加的業(yè)務(wù)分析應(yīng)用需求。 采用DW+ODS的數(shù)據(jù)倉庫體系結(jié)構(gòu),使用全新的ETL模式對ODS進(jìn)程每日數(shù)據(jù)更新,按周或月周期對數(shù)據(jù)倉庫執(zhí)行ETL過程。使用COGNOS BI做為前端的查詢分析和數(shù)據(jù)挖掘工具,可滿足各種日常數(shù)據(jù)處理操作,從即時(shí)簡單報(bào)表查詢到多維多級數(shù)據(jù)分析和挖掘,都能夠在統(tǒng)一COGNOS BI平臺上完成。 1.1.1 數(shù)據(jù)源和數(shù)據(jù)接口 數(shù)據(jù)源指存儲于財(cái)政各個(gè)業(yè)務(wù)系統(tǒng)的業(yè)務(wù)數(shù)據(jù),以及未來的財(cái)政監(jiān)管和外部數(shù)據(jù)。數(shù)據(jù)倉庫系統(tǒng)將整合來自于這些系統(tǒng)的數(shù)據(jù),形成財(cái)政統(tǒng)一的、一致的基礎(chǔ)數(shù)據(jù)集,并提供給不同的應(yīng)用主題形成數(shù)據(jù)集市。各個(gè)系統(tǒng)在體系架構(gòu)、開發(fā)平臺、數(shù)據(jù)定義、接口標(biāo)準(zhǔn)都會存在不同程度的差異;另外由于業(yè)務(wù)的不斷變化,歷史數(shù)據(jù)與當(dāng)前數(shù)據(jù)之間的含義也可能存在不同,因此數(shù)據(jù)整合必須充分考慮源系統(tǒng)在技術(shù)和數(shù)據(jù)方面存在的差異。 數(shù)據(jù)倉庫系統(tǒng)將采用文本文件的方式從源系統(tǒng)獲取數(shù)據(jù)。每個(gè)源系統(tǒng)會就與數(shù)據(jù)倉庫之間就傳輸數(shù)據(jù)接口文件(IFF)的格式和方法制定標(biāo)準(zhǔn),稱之為接口規(guī)范。 每個(gè)數(shù)據(jù)源會首先通過各自的數(shù)據(jù)導(dǎo)出程序(Extractor)生成接口文件存儲在各自的文件緩沖區(qū)內(nèi)。這個(gè)Extractor負(fù)責(zé)各自范圍內(nèi)導(dǎo)出數(shù)據(jù)的完備性和一致性,包括: 1) 依照各自的業(yè)務(wù)規(guī)則確定增量數(shù)據(jù)的導(dǎo)出方法 2) 保證導(dǎo)出文件的格式符合接口規(guī)范的要求 3) 保證導(dǎo)出文件的傳輸時(shí)間的及時(shí)性 4) 保證接口文件的數(shù)據(jù)質(zhì)量,不錯(cuò)數(shù)、不丟數(shù)、不多數(shù) 1.1.2 財(cái)政數(shù)據(jù)倉庫 財(cái)政數(shù)據(jù)倉庫(EDW),存儲和管理來自源數(shù)據(jù)系統(tǒng)的數(shù)據(jù),按照數(shù)據(jù)模型分主題進(jìn)行組織和存放,包括當(dāng)期的和較長時(shí)間的歷史數(shù)據(jù)。數(shù)據(jù)倉庫的核心是企業(yè)級數(shù)據(jù)模型的規(guī)劃和設(shè)計(jì),是所有應(yīng)用的基礎(chǔ)。接下來我們分別對EDW每個(gè)數(shù)據(jù)區(qū)域做詳細(xì)介紹。 1) 接口文件區(qū) 接口文件區(qū)是存儲和處理接口文件的區(qū)域,如前面章節(jié)所述,接口文件區(qū)在系統(tǒng)下按照特定的目錄結(jié)構(gòu)組織起來。用一些系統(tǒng)命令和工具來管理。對每個(gè)目錄按照其特定的用途設(shè)定對不同用戶的訪問權(quán)限,比如誰能讀,誰能寫,誰能改等。 2) 細(xì)節(jié)數(shù)據(jù)暫存區(qū)SSA(SOR Staging Area) SSA的主要目的是支持把接口文件的裝載到數(shù)據(jù)庫,對其進(jìn)行驗(yàn)證和處理,然后把數(shù)據(jù)整合到SOR內(nèi)。驗(yàn)證的方法主要是將新轉(zhuǎn)載的數(shù)據(jù)與SOR內(nèi)已有的數(shù)據(jù)進(jìn)行查找和比較。SSA內(nèi)數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)原則是最大限度的利用接口文件的數(shù)據(jù)結(jié)構(gòu),盡量降低實(shí)體的個(gè)數(shù),同時(shí)很好的支持后續(xù)的ETL過程。 3) 細(xì)節(jié)數(shù)據(jù)SOR(System Of Record) SOR是基于模型開發(fā)的一套符合3NF范式規(guī)范的表結(jié)構(gòu)。SOR存儲了數(shù)據(jù)倉庫內(nèi)最細(xì)節(jié)層次的數(shù)據(jù),按照不同的主題域進(jìn)一步分分類組織。此模型是整個(gè)數(shù)據(jù)倉庫數(shù)據(jù)模型的核心,其設(shè)計(jì)為具有足夠的靈活性,以能夠應(yīng)對添加更多的數(shù)據(jù)源,支持更多分析需求,同時(shí)也能夠支持進(jìn)一步升級和更新。 為了能夠在數(shù)據(jù)倉庫內(nèi)記錄數(shù)據(jù)的變化以支持歷史趨勢和變化分析,SOR在一些 關(guān)鍵的屬性值上會跟蹤變化(比如客戶的信用度、狀態(tài)等)。跟蹤變化的常見方法就是利用漸變維的Type 2方法來處理記錄,在表內(nèi)增加一條記錄變化數(shù)據(jù)的新記錄。同時(shí)為了降低不必要的存儲空間的浪費(fèi)(相同數(shù)據(jù)的重復(fù)存儲),我們可以把實(shí)體中動(dòng)態(tài)變化的屬性與靜態(tài)不變或只需覆蓋不需跟蹤變化的屬性分開。比如對用戶,我們可以用一張表存放不變化的用戶靜態(tài)屬性,用另一張表存放經(jīng)常變化的用戶行為屬性,當(dāng)跟蹤用戶行為的變化時(shí)我們只需在用戶行為表內(nèi)添加記錄就行了,沒必要把沒有發(fā)生變化的用戶靜態(tài)表內(nèi)的數(shù)據(jù)也復(fù)制一份。 4) 匯總數(shù)據(jù)區(qū)Summary 匯總數(shù)據(jù)區(qū)是為了方便查詢和后續(xù)多維數(shù)據(jù)的更新,創(chuàng)建一些常用的中間匯總表,以提高性能和降低后續(xù)ETL工作的復(fù)雜性。 由于SOR是高度規(guī)范化的數(shù)據(jù),因此要完成一個(gè)查詢需要大量的關(guān)聯(lián)操作;同時(shí)數(shù)據(jù)集市中的數(shù)據(jù)粒度往往要比SOR高很多,對要成生數(shù)據(jù)集市所需數(shù)據(jù)也需要大量的匯總計(jì)算,因此如果我們把常用的數(shù)據(jù)預(yù)先關(guān)聯(lián)和匯總好,并讓其盡量多在多個(gè)數(shù)據(jù)集市的計(jì)算中共享,就能大幅度的提高整個(gè)ETL工作和數(shù)據(jù)倉庫查詢的性能。 5) 反饋數(shù)據(jù)區(qū)(Feedback Area) 反饋數(shù)據(jù)區(qū)主要記錄的是數(shù)據(jù)倉庫自身生成的結(jié)果。比如用戶對營銷活動(dòng)的反饋等。數(shù)據(jù)倉庫的特性決定了用戶在原則上不能直接修改數(shù)據(jù)倉庫中的數(shù)據(jù),因此用戶的修改數(shù)據(jù)和其它生成數(shù)據(jù)必須單獨(dú)記錄,以便于追蹤歷史和進(jìn)行比較。 6) 元數(shù)據(jù)存儲MDR(Meta Data Repository) 元數(shù)據(jù)存儲用來保存關(guān)于數(shù)據(jù)倉庫中的過程、數(shù)據(jù)的信息(日志、數(shù)據(jù)詞典、配置信息等)。由于各個(gè)工具和系統(tǒng)都會生成自己的元數(shù)據(jù),同時(shí)我們還利用元數(shù)據(jù)管理工具把這些元數(shù)據(jù)盡可能的集中存儲到數(shù)據(jù)倉庫中的MDR內(nèi),因此MDR總的來說只是一個(gè)共享元數(shù)據(jù)供用戶集中訪問的地方,真正元數(shù)據(jù)的維護(hù)地還是在生成這些元數(shù)據(jù)的系統(tǒng)或工具內(nèi)。 1.1.3 數(shù)據(jù)集市 數(shù)據(jù)集市設(shè)計(jì)用途是要滿足特定的目的,同時(shí)具有查詢、多維分析、報(bào)表和數(shù)據(jù)挖掘功能。這與企業(yè)數(shù)據(jù)倉庫截然不同,設(shè)計(jì)時(shí)企業(yè)數(shù)據(jù)倉庫在信息內(nèi)容與結(jié)構(gòu)方面盡可能擁有開放性與靈活性。 數(shù)據(jù)集市有以下特征: n 為特定用途而設(shè)計(jì)——數(shù)據(jù)集市設(shè)計(jì)的目的,是支持特定用戶對數(shù)據(jù)子集的特定范圍的查詢。它以用戶所要求的方式提供企業(yè)數(shù)據(jù)倉庫的細(xì)節(jié)匯總。 n 優(yōu)化——數(shù)據(jù)集市為了支持特定工具的訪問而優(yōu)化。根據(jù)工具、根據(jù)企業(yè)數(shù)據(jù)倉庫提供的信息子集來設(shè)計(jì)數(shù)據(jù)集市,而不是讓用戶直接訪問企業(yè)數(shù)據(jù)倉庫中的大型數(shù)據(jù)庫,這可以改善數(shù)據(jù)集市的性能。 n 虛擬或物理數(shù)據(jù)集市——數(shù)據(jù)集市可以是物理的實(shí)現(xiàn),也可以是企業(yè)數(shù)據(jù)倉庫表的各種視圖。使用視圖(虛擬數(shù)據(jù)集市)可以避免存儲數(shù)據(jù)的多個(gè)副本,簡化了數(shù)據(jù)管理。 數(shù)據(jù)集市,即Data Mart,指面向?qū)m?xiàng)應(yīng)用領(lǐng)域的分析主題。Data Mart即是通過OLAP技術(shù)或者數(shù)據(jù)挖掘技術(shù),利用數(shù)據(jù)倉庫的數(shù)據(jù)根據(jù)用戶需求建立的數(shù)據(jù)集市模型,大大提高了前端查詢訪問的效率,用戶能方便地實(shí)現(xiàn)靈活、動(dòng)態(tài)、快速、多角度、多層次地分析企業(yè)數(shù)據(jù)。同時(shí),也可以通過定制靈活的OLTP查詢來了解明細(xì)數(shù)據(jù)。 1.1.4 數(shù)據(jù)的抽取、轉(zhuǎn)換、加載(ETL) 數(shù)據(jù)倉庫的數(shù)據(jù)來源于業(yè)務(wù)處理系統(tǒng),但是數(shù)據(jù)倉庫的數(shù)據(jù)并不是對源系統(tǒng)數(shù)據(jù)的簡單疊加,它需要按照數(shù)據(jù)倉庫的邏輯模型和物理模型,在源系統(tǒng)數(shù)據(jù)分析的基礎(chǔ)上,按照源系統(tǒng)數(shù)據(jù)和數(shù)據(jù)倉庫數(shù)據(jù)之間的映射關(guān)系,經(jīng)過數(shù)據(jù)的抽取(Extraction)、轉(zhuǎn)換 (Transformation)和加載(Loading)等環(huán)節(jié)方可進(jìn)入數(shù)據(jù)倉庫,這個(gè)過程簡稱為ETL處理。 數(shù)據(jù)經(jīng)過數(shù)據(jù)抽取、轉(zhuǎn)換和加載處理進(jìn)入數(shù)據(jù)倉庫的整個(gè)過程可以簡稱為ETL過程。ETL是搭建數(shù)據(jù)倉庫數(shù)據(jù)平臺的基礎(chǔ),也是保證數(shù)據(jù)倉庫的數(shù)據(jù)質(zhì)量的具體實(shí)現(xiàn)。根據(jù)基于數(shù)據(jù)倉庫項(xiàng)目開發(fā)的經(jīng)驗(yàn),在大多數(shù)據(jù)倉庫的實(shí)施過程當(dāng)中,ETL都是一個(gè)非常復(fù)雜、耗時(shí)的過程,其工作量約占整個(gè)數(shù)據(jù)倉庫項(xiàng)目的40-50%,占數(shù)據(jù)倉庫設(shè)計(jì)階段工作量的70-80%,有許多原因影響這一階段的時(shí)間和進(jìn)度。比如對原有業(yè)務(wù)系統(tǒng)和舊的操作環(huán)境的了解有限,原系統(tǒng)文檔不全等。因?yàn)檫@些原因,使ETL任務(wù)花了許多時(shí)間在了解舊的業(yè)務(wù)應(yīng)用以及如何抽取數(shù)據(jù)上。ETL實(shí)施困難另一個(gè)原因是原有的系統(tǒng)平臺沒有足夠的容量/系統(tǒng)資源來支持?jǐn)?shù)據(jù)抽取處理,系統(tǒng)資源不足可能表現(xiàn)為:CPU、磁盤空間、I/O帶寬或沒有一個(gè)有效的窗口去運(yùn)行抽取、轉(zhuǎn)換程序。 ETL過程不僅工作量大,而且還受到很多時(shí)間窗口的限制,它不僅需要在不同的特定(非確定)的時(shí)間抽取數(shù)據(jù),而且還必須要在特定的時(shí)間范圍內(nèi)把數(shù)據(jù)加載到數(shù)據(jù)倉庫。由于ETL過程是數(shù)據(jù)倉庫應(yīng)用系統(tǒng)每天都要進(jìn)行的工作, ETL設(shè)計(jì)的科學(xué)性和效率性是非常重要的,關(guān)系到數(shù)據(jù)倉庫項(xiàng)目的成敗。 ETL遵循如下設(shè)計(jì)原則: n 靈活性:不同的時(shí)間段中能夠進(jìn)行數(shù)據(jù)獲取、轉(zhuǎn)換、裝載。 n 可重復(fù)性:支持失敗的ETL任務(wù)行數(shù)據(jù)重新裝載。 n 模塊化:ETL過程分步實(shí)施,每個(gè)過程通過不同的模塊組件來完成。并盡可能復(fù)用這些組件;從而提高ETL實(shí)施效率,增加數(shù)據(jù)倉庫的可維護(hù)性。 n 迭代方法:滿足當(dāng)前的業(yè)務(wù)需求,盡可能搭建滿足未來的業(yè)務(wù)需求的平臺上不斷開發(fā)實(shí)施。 n ETL邏輯順序:依賴業(yè)務(wù)系統(tǒng)數(shù)據(jù)處理方式,來定義ETL處理流程控制。例如:在銀行的ETL過程中,交易記錄信息的數(shù)據(jù)裝載應(yīng)該在賬戶信息進(jìn)入數(shù)據(jù)倉庫之后進(jìn)行。 1.1.4.1 第一步:數(shù)據(jù)抽取 在源系統(tǒng)上啟動(dòng)數(shù)據(jù)抽取控制程序,完成以下工作: 1、數(shù)據(jù)采集 考慮到數(shù)據(jù)來源的多樣性和復(fù)雜性,數(shù)據(jù)采集主要包括: l 對業(yè)務(wù)系統(tǒng)的數(shù)據(jù)采集:在日終結(jié)后,當(dāng)日數(shù)據(jù)自動(dòng)、增量地轉(zhuǎn)儲到數(shù)據(jù)備份機(jī)上,作為數(shù)據(jù)倉庫的數(shù)據(jù)源并成為數(shù)據(jù)備份策略的一部分。 l 對于稅收計(jì)劃、外部數(shù)據(jù)、納稅人財(cái)務(wù)報(bào)表的數(shù)據(jù)采集??筛鶕?jù)實(shí)際需要,采用多種途徑。 2、數(shù)據(jù)發(fā)送 在數(shù)據(jù)采集完成后,各系統(tǒng)上的抽取控制程序?qū)?shù)據(jù)文件和校驗(yàn)文件通過局域網(wǎng)發(fā)送到數(shù)據(jù)轉(zhuǎn)換區(qū)。 1.1.4.2 第二步:數(shù)據(jù)裝入轉(zhuǎn)換區(qū) 1. 檢查數(shù)據(jù)是否到位 根據(jù)校驗(yàn)文件,檢查源系統(tǒng)數(shù)據(jù)是否到位、是否存在傳輸錯(cuò)誤等異常情況。如果數(shù)據(jù)不全或傳輸出現(xiàn)錯(cuò)誤,如果出錯(cuò),將出錯(cuò)結(jié)果寫入錯(cuò)誤日志,重新執(zhí)行第一步。 2. 將外部數(shù)據(jù)文件裝入數(shù)據(jù)庫 把來自外部源數(shù)據(jù)源的格式化數(shù)據(jù)轉(zhuǎn)化成數(shù)據(jù)庫、表結(jié)構(gòu)。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為抽取工作完成。 注:若直接從業(yè)務(wù)系統(tǒng)數(shù)據(jù)庫中抽取數(shù)據(jù),則無須數(shù)據(jù)轉(zhuǎn)換區(qū)步驟。 1.1.4.3 第三步:數(shù)據(jù)質(zhì)量檢查和出錯(cuò)處理 1. 狀態(tài)檢查: 查詢參數(shù)表,如果數(shù)據(jù)抽取工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 數(shù)據(jù)質(zhì)量檢查: 根據(jù)檢查規(guī)則,數(shù)據(jù)質(zhì)量檢查程序掃描源數(shù)據(jù)數(shù)據(jù)表,根據(jù)規(guī)則檢查數(shù)據(jù)是否合法,給出檢查報(bào)告和最終的數(shù)據(jù)質(zhì)量報(bào)告并寫入數(shù)據(jù)庫,數(shù)據(jù)質(zhì)量檢查結(jié)果寫入質(zhì)量檢查報(bào)告。 3. 出錯(cuò)處理: 如果出現(xiàn)嚴(yán)重出錯(cuò),停止ETL工作,需要系統(tǒng)維護(hù)人員現(xiàn)場做出相應(yīng)的處理,修改正確后,重新執(zhí)行該步驟工作;對于警告級出錯(cuò),繼續(xù)進(jìn)行下述步驟。 4. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為數(shù)據(jù)質(zhì)量檢查工作完成。 1.1.4.4 第四步:數(shù)據(jù)轉(zhuǎn)換 1、狀態(tài)檢查 查詢參數(shù)表,如果數(shù)據(jù)質(zhì)量檢查工作已經(jīng)完成,開始執(zhí)行該步工作。 2、數(shù)據(jù)轉(zhuǎn)換 根據(jù)數(shù)據(jù)倉庫要求的數(shù)據(jù)源格式在Staging Area中進(jìn)行并行轉(zhuǎn)換處 理,并將轉(zhuǎn)換的結(jié)果數(shù)據(jù)存放在待裝載數(shù)據(jù)存放區(qū)。 3、生成轉(zhuǎn)換報(bào)告 記錄數(shù)據(jù)轉(zhuǎn)換情況,并寫入數(shù)據(jù)庫轉(zhuǎn)換日志中。 4、修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為數(shù)據(jù)轉(zhuǎn)換工作完成。 1.1.4.5 第五步:數(shù)據(jù)加載 1、狀態(tài)檢查 查詢參數(shù)表,如果數(shù)據(jù)質(zhì)量檢查工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2、數(shù)據(jù)裝入數(shù)據(jù)倉庫 采用非依賴數(shù)據(jù)并行加載的策略,將待裝載數(shù)據(jù)區(qū)的數(shù)據(jù)裝入中心數(shù)據(jù)倉庫,如果標(biāo)準(zhǔn)代碼表發(fā)生變化,數(shù)據(jù)裝載程序?qū)?biāo)準(zhǔn)代碼的變化情況增量加載到數(shù)據(jù)倉庫代碼表中。 3、數(shù)據(jù)加載情況報(bào)告 記錄數(shù)據(jù)加載情況,并寫入數(shù)據(jù)倉庫數(shù)據(jù)庫的參數(shù)表中。 4、修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為數(shù)據(jù)轉(zhuǎn)換工作完成。 1.1.4.6 第六步:加載時(shí)間維 1. 狀態(tài)檢查 查詢參數(shù)表,如果數(shù)據(jù)加載工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 加載時(shí)間維 根據(jù)當(dāng)前的時(shí)間,依據(jù)數(shù)據(jù)集市多維模型,完成時(shí)間維的加載工作。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為時(shí)間維加載工作完成。 1.1.4.7 第七步:加載事實(shí)表 1. 狀態(tài)檢查 查詢參數(shù)表,如果時(shí)間維加載工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 加載事實(shí)表 以數(shù)據(jù)倉庫數(shù)據(jù)為數(shù)據(jù)源,依據(jù)數(shù)據(jù)集市多維模型,完成事實(shí)表的加載工作。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為事實(shí)表加載工作完成。 1.1.4.8 第八步:加載聚合表 1. 狀態(tài)檢查 查詢參數(shù)表,如果事實(shí)表加載工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 加載聚合表 以事實(shí)表為數(shù)據(jù)源,依據(jù)數(shù)據(jù)集市多維模型,完成聚合表的加載工作。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為ETL工作結(jié)束。 1.1.5 數(shù)據(jù)展現(xiàn) 數(shù)據(jù)訪問及展現(xiàn)是通過信息門戶,將各類數(shù)據(jù)集市應(yīng)用通過統(tǒng)一的平臺展現(xiàn)給財(cái)政各類用戶。同時(shí)提供數(shù)據(jù)分析結(jié)果的表達(dá)、共享與傳遞的功能,是信息服務(wù)的主要界面,主要包括信息展現(xiàn)與人機(jī)交互、信息發(fā)布等。 本次的展現(xiàn)選擇**的報(bào)表分析平臺,詳細(xì)功能見附件一。 1.2 數(shù)據(jù)架構(gòu)設(shè)計(jì) 數(shù)據(jù)倉庫的體系結(jié)構(gòu)包括4 個(gè)層次的數(shù)據(jù):數(shù)據(jù)源、數(shù)據(jù)倉庫層和數(shù)據(jù)集市層。 1) 數(shù)據(jù)源(業(yè)務(wù)系統(tǒng))包含面向操作應(yīng)用的原始數(shù)據(jù)以及外部錄入數(shù)據(jù),主要服務(wù)于高性能的事務(wù)處理。 2) 數(shù)據(jù)倉庫層(包括ODS 和DW)存儲企業(yè)的歷史數(shù)據(jù),其數(shù)據(jù)是規(guī)范的、穩(wěn)定的。 i. 數(shù)據(jù)倉庫包含當(dāng)前數(shù)據(jù)、綜合數(shù)據(jù)、歷史數(shù)據(jù)的組織和整理。通過數(shù)據(jù)抽取平臺獲取的各業(yè)務(wù)數(shù)據(jù),從邏輯上和業(yè)務(wù)上是獨(dú)立的、分散的,要實(shí)現(xiàn)一體化的查詢功能,必須對分散的業(yè)務(wù)數(shù)據(jù)進(jìn)行抽取和整合。如將分散的單位基礎(chǔ)信息、預(yù)算數(shù)據(jù)、支出數(shù)據(jù)通過一定的策略,整理形成一套編碼統(tǒng)一、業(yè)務(wù)連貫的數(shù)據(jù)體系,這是一體化查詢系統(tǒng)成功的關(guān)鍵。 3) 數(shù)據(jù)集市層(包括Relational Data Mart 和Star-Schema Data Mart 和OLAP)是面向部門的、滿足最終用戶需求的數(shù)據(jù),數(shù)據(jù)集市中的數(shù)據(jù)是反規(guī)范的、匯總的。 數(shù)據(jù)整理平臺基于各業(yè)務(wù)數(shù)據(jù),可以根據(jù)不同的用戶查詢需求,定制數(shù)據(jù)整理策略。根據(jù)查詢角度的不同,按決策的主題要求形成當(dāng)前的基本數(shù)據(jù)層,按綜合決策的要求構(gòu)成綜合數(shù)據(jù)層,隨著時(shí)問的推移,由時(shí)間控制機(jī)制將當(dāng)前基本數(shù)據(jù)層轉(zhuǎn)為歷史數(shù)據(jù)層。 4) 數(shù)據(jù)展現(xiàn)層(前端展現(xiàn))是面向業(yè)務(wù)用戶的需求展現(xiàn),包括使用報(bào)表、多維分析、即席查詢等基本功能,提供告警、統(tǒng)計(jì)算法等高級功能。 第二章 基于基礎(chǔ)資料系統(tǒng)的數(shù)據(jù)模型設(shè)計(jì) 2.1 基本緯度數(shù)據(jù)模型設(shè)計(jì) “金財(cái)工程”一體化需以系統(tǒng)統(tǒng)一的數(shù)據(jù)字典和統(tǒng)一的編碼體系為基礎(chǔ),以統(tǒng)一的應(yīng)用支撐平臺作保障,通過本級財(cái)政業(yè)務(wù)流程的整合,實(shí)現(xiàn)對任一筆資金的跟蹤和回溯。 為了實(shí)現(xiàn)對數(shù)據(jù)的集中使用,就要從需求出發(fā),在充分考慮到數(shù)據(jù)的可共享性、系統(tǒng)未來的可擴(kuò)展性等因素,定義一套標(biāo)準(zhǔn)數(shù)據(jù)格式,為系統(tǒng)的建設(shè)打下一個(gè)良好的基礎(chǔ)。它包括各種涉及的基礎(chǔ)編碼表:如預(yù)算科目表、經(jīng)濟(jì)科目表、預(yù)算單位編碼表、企業(yè)登記表、稅種表、預(yù)算級次表等。 數(shù)據(jù)字典是財(cái)政業(yè)務(wù)系統(tǒng)間需要統(tǒng)一維護(hù)管理、支持同步和共享的數(shù)據(jù)元、基礎(chǔ)代碼集、基礎(chǔ)配置數(shù)據(jù)和相關(guān)命名規(guī)范的統(tǒng)稱。其中數(shù)據(jù)元又稱數(shù)據(jù)類型,包括定義、標(biāo)識、表示以及允許值等一系列屬性描述的數(shù)據(jù)單元。通常所說的業(yè)務(wù)要素就是財(cái)政業(yè)務(wù)系統(tǒng)中構(gòu)成業(yè)務(wù)數(shù)據(jù)的比較重要的數(shù)據(jù)元,該類數(shù)據(jù)元均有相應(yīng)的基礎(chǔ)代碼集。 數(shù)據(jù)字典中主要包括的內(nèi)容:財(cái)政業(yè)務(wù)管理涉及到的所有的數(shù)據(jù)元及共享的基礎(chǔ)代碼集;共用的用戶列表;相關(guān)配置數(shù)據(jù)及系統(tǒng)開發(fā)需遵循的命名規(guī)范。 我們將按照省廳建設(shè)的基礎(chǔ)數(shù)據(jù)資料庫來進(jìn)行基本緯度模型的建設(shè)。 2.2 基礎(chǔ)資料系統(tǒng)維護(hù)功能 模塊 功能模塊 功能說明 框架 單點(diǎn)登錄 多系統(tǒng)實(shí)現(xiàn)單點(diǎn)登錄 權(quán)限控制 統(tǒng)一的功能權(quán)限控制機(jī)制 日志 統(tǒng)一的系統(tǒng)級、功能級、數(shù)據(jù)級操作日志 選擇年度 選擇所需要操作的年度和帳套,設(shè)置默認(rèn)的年度; 修改密碼 修改當(dāng)前用戶的登錄系統(tǒng)密碼; 注銷 注銷當(dāng)前用戶,退出系統(tǒng),返回到登錄頁面; 幫助 隱藏 隱藏和顯示頁面上方軟件標(biāo)題欄和左方菜單欄; 基礎(chǔ)資料 創(chuàng)建新年度 系統(tǒng)設(shè)置 應(yīng)用設(shè)置 設(shè)置應(yīng)用的名稱以及一些基礎(chǔ)信息; 選項(xiàng)表設(shè)置 設(shè)置選項(xiàng)表以及下拉菜單信息; 參數(shù)設(shè)置 設(shè)置各個(gè)應(yīng)用的所在服務(wù)器的IP值以及一些其他的固定的參數(shù); 應(yīng)用權(quán)限設(shè)置 設(shè)置數(shù)據(jù)授權(quán)中的用戶和單位對應(yīng)用中的要素的權(quán)限是否公有; 用戶對賬本年度 設(shè)置用戶與賬本年度對應(yīng)關(guān)系,也即用戶訪問賬本年度的權(quán)限; 緩存管理 刷新緩存的功能; 要素維護(hù) 預(yù)算單位 設(shè)置預(yù)算單位名稱以及基本信息; 功能科目 設(shè)置功能科目名稱以及基本信息; 會計(jì)科目 設(shè)置會計(jì)科目名稱以及基本信息; 經(jīng)濟(jì)科目 設(shè)置經(jīng)濟(jì)科目名稱以及基本信息; 預(yù)算項(xiàng)目 設(shè)置預(yù)算項(xiàng)目名稱以及基本信息; 收費(fèi)項(xiàng)目 設(shè)置收費(fèi)項(xiàng)目名稱以及基本信息; 資金來源 設(shè)置資金來源名稱以及基本信息; 指標(biāo)類型 設(shè)置指標(biāo)類型名稱以及基本信息; 資金性質(zhì) 設(shè)置資金性質(zhì)名稱以及基本信息; 財(cái)政歸口部門 設(shè)置財(cái)政歸口部門名稱以及基本信息; 數(shù)據(jù)授權(quán) 用戶對預(yù)算單位 設(shè)置用戶與預(yù)算單位對應(yīng)關(guān)系; 用戶對會計(jì)科目 設(shè)置用戶與會計(jì)科目對應(yīng)關(guān)系; 用戶對功能科目 設(shè)置用戶與功能科目對應(yīng)關(guān)系; 用戶對經(jīng)濟(jì)科目 設(shè)置用戶與經(jīng)濟(jì)科目對應(yīng)關(guān)系; 用戶對預(yù)算項(xiàng)目 設(shè)置用戶與預(yù)算項(xiàng)目對應(yīng)關(guān)系; 用戶對收費(fèi)項(xiàng)目 設(shè)置用戶與收費(fèi)項(xiàng)目對應(yīng)關(guān)系; 用戶對指標(biāo)類型 設(shè)置用戶與指標(biāo)類型對應(yīng)關(guān)系; 用戶對資金來源 設(shè)置用戶與資金來源對應(yīng)關(guān)系; 單位對會計(jì)科目 設(shè)置預(yù)算單位與會計(jì)科目對應(yīng)關(guān)系; 單位對功能科目 設(shè)置預(yù)算單位與功能科目對應(yīng)關(guān)系; 單位對經(jīng)濟(jì)科目 設(shè)置預(yù)算單位與經(jīng)濟(jì)科目對應(yīng)關(guān)系; 單位對預(yù)算項(xiàng)目 設(shè)置預(yù)算單位與預(yù)算項(xiàng)目對應(yīng)關(guān)系; 處室對單位 設(shè)置財(cái)政歸口部門與預(yù)算單位之間的對應(yīng)關(guān)系; 用戶對歸口 設(shè)置用戶與財(cái)政歸口部門之間的對應(yīng)關(guān)系; 功能授權(quán) 用戶 設(shè)置用戶的基本信息以及用戶與財(cái)政歸口部門和預(yù)算單位之間的對應(yīng)關(guān)系; 崗位 設(shè)置崗位的基本信息; 功能 設(shè)置功能(也即各個(gè)應(yīng)用的菜單和按鈕)的基本信息和鏈接地址等; 功能轉(zhuǎn)授 把當(dāng)前用戶的功能轉(zhuǎn)授給其他用戶的設(shè)置; 用戶對崗位 設(shè)置用戶與崗位的對應(yīng)關(guān)系; 崗位對功能 設(shè)置崗位與功能的對應(yīng)關(guān)系; 權(quán)限轉(zhuǎn)授 用戶對會計(jì)科目 把當(dāng)前用戶會計(jì)科目的數(shù)據(jù)權(quán)限轉(zhuǎn)授給其他用戶; 用戶對經(jīng)濟(jì)科目 把當(dāng)前用戶經(jīng)濟(jì)科目的數(shù)據(jù)權(quán)限轉(zhuǎn)授給其他用戶; 用戶對指標(biāo)類型 把當(dāng)前用戶指標(biāo)類型的數(shù)據(jù)權(quán)限轉(zhuǎn)授給其他用戶; 用戶對收費(fèi)項(xiàng)目 把當(dāng)前用戶收費(fèi)項(xiàng)目的數(shù)據(jù)權(quán)限轉(zhuǎn)授給其他用戶; 用戶對預(yù)算項(xiàng)目 把當(dāng)前用戶預(yù)算項(xiàng)目的數(shù)據(jù)權(quán)限轉(zhuǎn)授給其他用戶; 用戶對資金來源 把當(dāng)前用戶資金來源的數(shù)據(jù)權(quán)限轉(zhuǎn)授給其他用戶; 2.3 數(shù)據(jù)邏輯建模 邏輯建模是數(shù)據(jù)倉庫實(shí)施中的重要一環(huán), 因?yàn)樗苤苯臃从吵鰶Q策者管理者的需求, 同時(shí)對系統(tǒng)的物理實(shí)施有著重要的指導(dǎo)作用。目前較常用的兩種建模方法是所謂的第三范式(3NF, 即 Third Normal Form)和星型模式 (Star-Schema),3NF 是數(shù)據(jù)庫設(shè)計(jì)的基礎(chǔ)理論,這里不再展開。 星型模式是一種多維的數(shù)據(jù)關(guān)系,它由一個(gè)事實(shí)表(Fact Table)和一組維表(Dimension Table)組成。每個(gè)維表都有一個(gè)維作為主鍵,所有這些維的主鍵組合成事實(shí)表的主鍵。事實(shí)表的非主鍵屬性稱為事實(shí) (Fact),它們一般都是數(shù)值或其他可以進(jìn)行計(jì)算的數(shù)據(jù); 而維大都是文字、時(shí)間等類型的數(shù)據(jù),按這種方式組織好數(shù)據(jù)我們就可以按照不同的維(事實(shí)表的主鍵的部分或全部)來對這些事實(shí)數(shù)據(jù)進(jìn)行求和(summary)、求平均(average)、計(jì)數(shù)(count)、百分比(percent)的聚集計(jì)算,甚至可以做20-80 分析。這樣就可以從不同的角度數(shù)字來分析業(yè)務(wù)主題的情況,下面給出一個(gè)直觀的例子。 功能分類維 功能分類標(biāo)準(zhǔn)碼 類 款 項(xiàng) …… 業(yè)務(wù)處室維 業(yè)務(wù)處室編碼 業(yè)務(wù)處室名稱 …… 時(shí)間維 時(shí)間代碼 年 季度 月 …… 單位維 單位編碼 一級單位編碼 一級單位名稱 二級單位編碼 …… 預(yù)算執(zhí)行情況分析 功能分類標(biāo)準(zhǔn)碼 業(yè)務(wù)處室編碼 時(shí)間代碼 單位編碼 指標(biāo)金額 計(jì)劃金額 支付金額 …… 圖8-3 預(yù)算執(zhí)行情況星型模型 圖三是一個(gè)典型的財(cái)政預(yù)算執(zhí)行情況分析的模型設(shè)計(jì),其中加邊框的為主關(guān)鍵字(PK, Primary Key),其中預(yù)算執(zhí)行情況分析表是一個(gè)事實(shí)表,其中的指標(biāo)金額,計(jì)劃金額,支付金額是需要從各角度觀察的數(shù)據(jù)(事實(shí)),而觀察的角度是有功能分類、業(yè)務(wù)處室、時(shí)間和單位這四個(gè)方面組合進(jìn)行,這些分析角度的有機(jī)組合,可以對指標(biāo)金額、計(jì)劃金額和支付金額進(jìn)行多種組合的數(shù)據(jù)統(tǒng)計(jì)分析,以此實(shí)現(xiàn)對預(yù)算執(zhí)行情況的多角度(維)多層次(數(shù)據(jù)不同的匯總程度)的分析,預(yù)算執(zhí)行情況分析人員既可以宏觀地看到財(cái)政業(yè)務(wù)的整體情況,又可以微觀地觀察到具體某預(yù)算單位某天支出的細(xì)節(jié)信息。多維分析的時(shí)候,維度選擇越多數(shù)據(jù)越細(xì)節(jié)(劃分得更細(xì)了),維度選擇越少數(shù)據(jù)越匯總越宏觀。 這樣一個(gè)中間一個(gè)大表形成主表,周圍一組小表與主表相關(guān)聯(lián)的結(jié)構(gòu),形態(tài)上呈星星和雪花的形狀,星型模型是數(shù)據(jù)倉庫的數(shù)據(jù)模型與其他數(shù)據(jù)庫應(yīng)用相區(qū)分的一個(gè)重要特征。 星型 雪花 數(shù)據(jù)倉庫典型的邏輯模型形狀 第三章 數(shù)據(jù)抽取平臺建設(shè) 數(shù)據(jù)轉(zhuǎn)換平臺是將分布式物理存儲的源數(shù)據(jù),轉(zhuǎn)換到統(tǒng)一存儲的數(shù)據(jù)倉庫中。從分布式源數(shù)據(jù)庫中獲取對財(cái)政一體化查詢系統(tǒng)用戶有用的數(shù)據(jù)、過濾掉不需要的內(nèi)容、驗(yàn)證數(shù)據(jù)的質(zhì)量、數(shù)據(jù)清理、數(shù)據(jù)融合、到最后數(shù)據(jù)裝載入數(shù)據(jù)倉庫中。數(shù)據(jù)抽取是數(shù)據(jù)進(jìn)入倉庫的入口,財(cái)政一體化查詢系統(tǒng)涉及多個(gè)分布式數(shù)據(jù)源,需要通過抽取過程將數(shù)據(jù)從聯(lián)機(jī)事務(wù)處理系統(tǒng)、外部數(shù)據(jù)源、脫機(jī)的數(shù)據(jù)存儲介質(zhì)中導(dǎo)入到數(shù)據(jù)倉庫。根據(jù)源數(shù)據(jù)的不同性質(zhì),應(yīng)選用不同的數(shù)據(jù)抽取方法。本系統(tǒng)中,對于Oracle、sybase等關(guān)系數(shù)據(jù)庫中的數(shù)據(jù),我們通過交易日志的方法進(jìn)行數(shù)據(jù)抽取,而對于其它半結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù),我們選用靜態(tài)數(shù)據(jù)、時(shí)間標(biāo)記、文件比較等方法實(shí)現(xiàn)數(shù)據(jù)抽取。 3.1 設(shè)計(jì)原則 l 高數(shù)據(jù)質(zhì)量原則: 保證進(jìn)入數(shù)據(jù)倉庫數(shù)據(jù)的質(zhì)量,將垃圾數(shù)據(jù)排除在數(shù)據(jù)倉庫之外。 l 自動(dòng)化原則: ETL過程應(yīng)盡量自動(dòng)完成,減少人為干預(yù)程度。 l 可追溯原則: ETL的相關(guān)工作結(jié)果,應(yīng)留有痕跡,給出相應(yīng)的報(bào)告,以便跟蹤和分析。 l 參數(shù)化設(shè)計(jì)原則: 采用參數(shù)化的設(shè)計(jì)思想,減少編程的工作量,增強(qiáng)系統(tǒng)的靈活性和可維護(hù)性。 l 效率性原則: 采用并行處理等設(shè)計(jì)方法,減少ETL時(shí)間,提高ETL效率。 l 源系統(tǒng)不修改原則: 盡量不對源系統(tǒng)進(jìn)行修改,將對源系統(tǒng)的影響降低到最低程度。 l 方便性原則。 ETL設(shè)計(jì)應(yīng)充分考慮系統(tǒng)運(yùn)行后管理和維護(hù)的方便性和易用性。 3.2 ETL抽取過程設(shè)計(jì) ETL工具采用Cognos產(chǎn)品本身的ETL工具 3.2.1 ETL過程概述 ETL流程是指源系統(tǒng)數(shù)據(jù)經(jīng)過數(shù)據(jù)抽取、轉(zhuǎn)換和加載處理進(jìn)入數(shù)據(jù)倉庫的整個(gè)過程。ETL流程主要包括以下主要步驟: 1. 數(shù)據(jù)抽取: 數(shù)據(jù)抽取就是將數(shù)據(jù)倉庫需要的業(yè)務(wù)數(shù)據(jù)抽取到數(shù)據(jù)轉(zhuǎn)換區(qū)的過程。(這里的數(shù)據(jù)轉(zhuǎn)換區(qū)也可以僅僅是一個(gè)邏輯的概念,即數(shù)據(jù)的抽取到轉(zhuǎn)換采取數(shù)據(jù)不落地的方式完成) 2. 數(shù)據(jù)檢查和出錯(cuò)處理: 在數(shù)據(jù)轉(zhuǎn)換區(qū)中,對源系統(tǒng)數(shù)據(jù)質(zhì)量進(jìn)行檢查,形成檢查報(bào)告,并進(jìn)行相應(yīng)的出錯(cuò)處理,對于嚴(yán)重錯(cuò)誤,需要系統(tǒng)維護(hù)人員現(xiàn)場做出相應(yīng)的處理。 3. 數(shù)據(jù)轉(zhuǎn)換: 數(shù)據(jù)轉(zhuǎn)換包括對源系統(tǒng)數(shù)據(jù)進(jìn)行整理、剔除、合并、驗(yàn)證等一系列轉(zhuǎn)換工作,最后形成數(shù)據(jù)倉庫物理數(shù)據(jù)結(jié)構(gòu)所需的數(shù)據(jù),存放在轉(zhuǎn)換區(qū)的數(shù)據(jù)表中。 4. 數(shù)據(jù)加載: 數(shù)據(jù)加載將數(shù)據(jù)轉(zhuǎn)換的結(jié)果數(shù)據(jù)加載到數(shù)據(jù)倉庫,并形成數(shù)據(jù)加載情況的報(bào)告。 3.2.2 ETL過程詳述 本期項(xiàng)目ETL的過程具體描述如下: 第一步: 數(shù)據(jù)抽取 在源系統(tǒng)上啟動(dòng)數(shù)據(jù)抽取控制程序,完成以下工作: 1、 數(shù)據(jù)采集 考慮到數(shù)據(jù)來源的多樣性和復(fù)雜性,數(shù)據(jù)采集主要包括: l 對業(yè)務(wù)系統(tǒng)的數(shù)據(jù)采集:在日終結(jié)后,當(dāng)日數(shù)據(jù)自動(dòng)、增量地轉(zhuǎn)儲到數(shù)據(jù)備份機(jī)上,作為數(shù)據(jù)倉庫的數(shù)據(jù)源并成為數(shù)據(jù)備份策略的一部分。 l 對于稅收計(jì)劃、外部數(shù)據(jù)、納稅人財(cái)務(wù)報(bào)表的數(shù)據(jù)采集??筛鶕?jù)實(shí)際需要,采用多種途徑。 2、 數(shù)據(jù)發(fā)送 在數(shù)據(jù)采集完成后,各系統(tǒng)上的抽取控制程序?qū)?shù)據(jù)文件和校驗(yàn)文件通過局域網(wǎng)發(fā)送到數(shù)據(jù)轉(zhuǎn)換區(qū)。 第二步:數(shù)據(jù)裝入轉(zhuǎn)換區(qū) 1. 檢查數(shù)據(jù)是否到位 根據(jù)校驗(yàn)文件,檢查源系統(tǒng)數(shù)據(jù)是否到位、是否存在傳輸錯(cuò)誤等異常情況。如果數(shù)據(jù)不全或傳輸出現(xiàn)錯(cuò)誤,如果出錯(cuò),將出錯(cuò)結(jié)果寫入錯(cuò)誤日志,重新執(zhí)行第一步。 2. 將外部數(shù)據(jù)文件裝入oracle數(shù)據(jù)庫 把來自外部源數(shù)據(jù)源的格式化數(shù)據(jù)轉(zhuǎn)化成oracle數(shù)據(jù)庫、表結(jié)構(gòu)。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為抽取工作完成。 注:若直接從業(yè)務(wù)系統(tǒng)數(shù)據(jù)庫中抽取數(shù)據(jù),則無須數(shù)據(jù)轉(zhuǎn)換區(qū)步驟。 第三步:數(shù)據(jù)質(zhì)量檢查和出錯(cuò)處理 1. 狀態(tài)檢查: 查詢參數(shù)表,如果數(shù)據(jù)抽取工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 數(shù)據(jù)質(zhì)量檢查: 根據(jù)檢查規(guī)則,數(shù)據(jù)質(zhì)量檢查程序掃描源數(shù)據(jù)數(shù)據(jù)表,根據(jù)規(guī)則檢查數(shù)據(jù)是否合法,給出檢查報(bào)告和最終的數(shù)據(jù)質(zhì)量報(bào)告并寫入數(shù)據(jù)庫,數(shù)據(jù)質(zhì)量檢查結(jié)果寫入質(zhì)量檢查報(bào)告。 3. 出錯(cuò)處理: 如果出現(xiàn)嚴(yán)重出錯(cuò),停止ETL工作,需要系統(tǒng)維護(hù)人員現(xiàn)場做出相應(yīng)的處理,修改正確后,重新執(zhí)行該步驟工作;對于警告級出錯(cuò),繼續(xù)進(jìn)行下述步驟。 4. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為數(shù)據(jù)質(zhì)量檢查工作完成。 第四步:數(shù)據(jù)轉(zhuǎn)換 1、 狀態(tài)檢查 查詢參數(shù)表,如果數(shù)據(jù)質(zhì)量檢查工作已經(jīng)完成,開始執(zhí)行該步工作。 2、 數(shù)據(jù)轉(zhuǎn)換 根據(jù)數(shù)據(jù)倉庫要求的數(shù)據(jù)源格式在Staging Area中進(jìn)行并行轉(zhuǎn)換處理,并將轉(zhuǎn)換的結(jié)果數(shù)據(jù)存放在待裝載數(shù)據(jù)存放區(qū)。 3、 生成轉(zhuǎn)換報(bào)告 記錄數(shù)據(jù)轉(zhuǎn)換情況,并寫入數(shù)據(jù)庫轉(zhuǎn)換日志中。 4、 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為數(shù)據(jù)轉(zhuǎn)換工作完成。 第五步:數(shù)據(jù)加載 l 狀態(tài)檢查 查詢參數(shù)表,如果數(shù)據(jù)質(zhì)量檢查工作已經(jīng)完成,開始執(zhí)行該步驟工作。 l 數(shù)據(jù)裝入數(shù)據(jù)倉庫 采用非依賴數(shù)據(jù)并行加載的策略,將待裝載數(shù)據(jù)區(qū)的數(shù)據(jù)裝入中心數(shù)據(jù)倉庫,如果標(biāo)準(zhǔn)代碼表發(fā)生變化,數(shù)據(jù)裝載程序?qū)?biāo)準(zhǔn)代碼的變化情況增量加載到數(shù)據(jù)倉庫代碼表中。 l 數(shù)據(jù)加載情況報(bào)告 記錄數(shù)據(jù)加載情況,并寫入數(shù)據(jù)倉庫數(shù)據(jù)庫的參數(shù)表中。 l 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為數(shù)據(jù)轉(zhuǎn)換工作完成。 第六步:加載時(shí)間維 1. 狀態(tài)檢查 查詢參數(shù)表,如果數(shù)據(jù)加載工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 加載時(shí)間維 根據(jù)當(dāng)前的時(shí)間,依據(jù)數(shù)據(jù)集市多維模型,完成時(shí)間維的加載工作。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為時(shí)間維加載工作完成。 第七步:加載事實(shí)表 1. 狀態(tài)檢查 查詢參數(shù)表,如果時(shí)間維加載工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 加載事實(shí)表 以數(shù)據(jù)倉庫數(shù)據(jù)為數(shù)據(jù)源,依據(jù)數(shù)據(jù)集市多維模型,完成事實(shí)表的加載工作。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為事實(shí)表加載工作完成。 第八步:加載聚合表 1. 狀態(tài)檢查 查詢參數(shù)表,如果事實(shí)表加載工作已經(jīng)完成,開始執(zhí)行該步驟工作。 2. 加載聚合表 以事實(shí)表為數(shù)據(jù)源,依據(jù)數(shù)據(jù)集市多維模型,完成聚合表的加載工作。 3. 修改系統(tǒng)狀態(tài): 待該步驟工作完成后,將系統(tǒng)狀態(tài)改為ETL工作結(jié)束。 3.2.3 ETL時(shí)間約束 數(shù)據(jù)抽取的范圍涉及財(cái)政核心業(yè)務(wù)系統(tǒng)數(shù)據(jù),主要是五大塊內(nèi)容:稅收收入數(shù)據(jù)、非稅收入數(shù)據(jù)、部門預(yù)算、支出數(shù)據(jù)、專項(xiàng)支出數(shù)據(jù)、其他系統(tǒng)數(shù)據(jù)。其中:其他系統(tǒng)數(shù)據(jù)包含固定資產(chǎn)、統(tǒng)發(fā)工資等相關(guān)財(cái)政業(yè)務(wù)系統(tǒng)數(shù)據(jù)。平臺在數(shù)據(jù)抽取時(shí)根據(jù)用戶對數(shù)據(jù)的查詢需求,可以實(shí)時(shí)、按天、按月取數(shù)。 是指對在每天的特定時(shí)間必須要完成的事件進(jìn)行嚴(yán)格的控制。對時(shí)間的限制建議可以表示為下圖: 圖4-2:ETL時(shí)間階段示意圖 從上圖可以看出,為了保證每天業(yè)務(wù)人員及時(shí)使用數(shù)據(jù)倉庫系統(tǒng),對ETL時(shí)間通常有如下要求: n 3:30之前完成數(shù)據(jù)從源系統(tǒng)到數(shù)據(jù)轉(zhuǎn)換區(qū)的數(shù)據(jù)抽取工作。 n 5:00之前完成數(shù)據(jù)轉(zhuǎn)換區(qū)內(nèi)的數(shù)據(jù)轉(zhuǎn)換工作。 n 6:00之前完成轉(zhuǎn)換后數(shù)據(jù)到數(shù)據(jù)倉庫的數(shù)據(jù)加載工作。 n 8:00之前完成數(shù)據(jù)倉庫到數(shù)據(jù)集市多維數(shù)據(jù)庫的ETL工作。 ETL的時(shí)間窗口通常在4-6小時(shí),考慮到將來系統(tǒng)數(shù)據(jù)的增長,ETL工具的處理效率和擴(kuò)展性是關(guān)鍵。 3.3 后臺對應(yīng)規(guī)則的設(shè)置 平臺中的數(shù)據(jù)由于來自不同的業(yè)務(wù)系統(tǒng),各數(shù)據(jù)的編碼可能不一致,系統(tǒng)能與后臺設(shè)置各編碼的進(jìn)行對應(yīng)關(guān)系管理; 用戶對預(yù)算單位 設(shè)置用戶與預(yù)算單位對應(yīng)關(guān)系; 用戶對會計(jì)科目 設(shè)置用戶與會計(jì)科目對應(yīng)關(guān)系; 用戶對功能科目 設(shè)置用戶與功能科目對應(yīng)關(guān)系; 用戶對經(jīng)濟(jì)科目 設(shè)置用戶與經(jīng)濟(jì)科目對應(yīng)關(guān)系; 用戶對預(yù)算項(xiàng)目 設(shè)置用戶與預(yù)算項(xiàng)目對應(yīng)關(guān)系; 用戶對收費(fèi)項(xiàng)目 設(shè)置用戶與收費(fèi)項(xiàng)目對應(yīng)關(guān)系; 用戶對指標(biāo)類型 設(shè)置用戶與指標(biāo)類型對應(yīng)關(guān)系; 用戶對資金來源 設(shè)置用戶與資金來源對應(yīng)關(guān)系; 單位對會計(jì)科目 設(shè)置預(yù)算單位與會計(jì)科目對應(yīng)關(guān)系; 單位對功能科目 設(shè)置預(yù)算單位與功能科目對應(yīng)關(guān)系; 單位對經(jīng)濟(jì)科目 設(shè)置預(yù)算單位與經(jīng)濟(jì)科目對應(yīng)關(guān)系; 單位對預(yù)算項(xiàng)目 設(shè)置預(yù)算單位與預(yù)算項(xiàng)目對應(yīng)關(guān)系; 處室對單位 設(shè)置財(cái)政歸口部門與預(yù)算單位之間的對應(yīng)關(guān)系; 用戶對歸口 設(shè)置用戶與財(cái)政歸口部門之間的對應(yīng)關(guān)系; 預(yù)算項(xiàng)目對執(zhí)行項(xiàng)目 設(shè)置預(yù)算項(xiàng)目與執(zhí)行項(xiàng)目之間的對應(yīng)關(guān)系 …………… …………….. 3.3.1 數(shù)據(jù)抽取程序的設(shè)計(jì)原則 數(shù)據(jù)倉庫需要的數(shù)據(jù)存在于不同種類、不同技術(shù)平臺的業(yè)務(wù)系統(tǒng)中,數(shù)據(jù)抽取就是從這些不同的數(shù)據(jù)源中抽取數(shù)據(jù)作為數(shù)據(jù)倉庫的原材料。本項(xiàng)目數(shù)據(jù)抽取設(shè)計(jì)時(shí),采用以下方法: 1. 直接從源業(yè)務(wù)系統(tǒng)抽取最原始的數(shù)據(jù),不抽取派生數(shù)據(jù)。 2. 只抽取源系統(tǒng)中本期項(xiàng)目需要的數(shù)據(jù)庫表。 3.3.2 數(shù)據(jù)抽取方式 1. 初始抽取 數(shù)據(jù)初始抽取指按照需求設(shè)計(jì)要求,把數(shù)據(jù)倉庫要求的各業(yè)務(wù)系統(tǒng)的數(shù)據(jù)源一次性抽取并加載到數(shù)據(jù)倉庫,本項(xiàng)目初始抽取的數(shù)據(jù)范圍為源業(yè)務(wù)系統(tǒng)當(dāng)天日終后的數(shù)據(jù)。 初次加載時(shí)間可定為投入運(yùn)行的當(dāng)月業(yè)務(wù)系統(tǒng)處理結(jié)束后進(jìn)行。 2. 增量抽取 在數(shù)據(jù)倉庫系統(tǒng)投入運(yùn)行后,只抽取業(yè)務(wù)系統(tǒng)的增量數(shù)據(jù)到數(shù)據(jù)倉庫,增量數(shù)據(jù)包括業(yè)務(wù)系統(tǒng)新增數(shù)據(jù)和變化數(shù)據(jù)兩部分,采用增量抽取的方法確保每次最小的數(shù)據(jù)子集加載到數(shù)據(jù)倉庫里。 第四章 數(shù)據(jù)整理平臺建設(shè) 數(shù)據(jù)整理平臺實(shí)現(xiàn)數(shù)據(jù)倉庫中當(dāng)前數(shù)據(jù)、綜合數(shù)據(jù)、歷史數(shù)據(jù)的組織和整理。通過數(shù)據(jù)抽取平臺獲取的各業(yè)務(wù)數(shù)據(jù),從邏輯上和業(yè)務(wù)上是獨(dú)立的、分散的,要實(shí)現(xiàn)一體化的查詢功能,必須對分散的業(yè)務(wù)數(shù)據(jù)進(jìn)行抽取和整合。如將分散的單位基礎(chǔ)信息、預(yù)算數(shù)據(jù)、支出數(shù)據(jù)通過一定的策略,整理形成一套編碼統(tǒng)一、業(yè)務(wù)連貫的數(shù)據(jù)體系,這是一體化查詢系統(tǒng)成功的關(guān)鍵。 數(shù)據(jù)整理平臺基于各業(yè)務(wù)數(shù)據(jù),可以根據(jù)不同的用戶查詢需求,定制數(shù)據(jù)整理策略。根據(jù)查詢角度的不同,按決策的主題要求形成當(dāng)前的基本數(shù)據(jù)層,按綜合決策的要求構(gòu)成綜合數(shù)據(jù)層,隨著時(shí)問的推移,由時(shí)間控制機(jī)制將當(dāng)前基本數(shù)據(jù)層轉(zhuǎn)為歷史數(shù)據(jù)層。 4.1 數(shù)據(jù)轉(zhuǎn)換設(shè)計(jì) 4.1.1 數(shù)據(jù)轉(zhuǎn)換的工作內(nèi)容 數(shù)據(jù)轉(zhuǎn)換是數(shù)據(jù)倉庫項(xiàng)目中數(shù)據(jù)管理部分的核心內(nèi)容,這個(gè)過程會直接影響數(shù)據(jù)倉庫數(shù)據(jù)的質(zhì)量,數(shù)據(jù)轉(zhuǎn)換主要設(shè)計(jì)以下工作內(nèi)容: l 數(shù)據(jù)整理: 這一處理過程將數(shù)據(jù)從源系統(tǒng)中的結(jié)構(gòu)和格式轉(zhuǎn)換成數(shù)據(jù)倉庫所需的結(jié)構(gòu)和格式。 l 數(shù)據(jù)清理: 數(shù)據(jù)清理通常用來處理已知的某一數(shù)據(jù)源的數(shù)據(jù)質(zhì)量問題,數(shù)據(jù)清理主要是根據(jù)相關(guān)的業(yè)務(wù)規(guī)則來糾正數(shù)據(jù)質(zhì)量問題,給數(shù)據(jù)倉庫中的數(shù)據(jù)一個(gè)合理的取值。 l 數(shù)據(jù)驗(yàn)證: 這一過程確保所選擇的數(shù)據(jù)成功采集、在轉(zhuǎn)換處理過程中保證數(shù)據(jù)的完整性。 4.1.2 數(shù)據(jù)轉(zhuǎn)換程序的設(shè)計(jì)原則 根據(jù)本次的項(xiàng)目特點(diǎn),數(shù)據(jù)轉(zhuǎn)換設(shè)計(jì)采用如下設(shè)計(jì)方法: 1. 數(shù)據(jù)轉(zhuǎn)換程序首先完成數(shù)據(jù)整理工作,保證數(shù)據(jù)格式的正確性。 2. 數(shù)據(jù)倉庫中不需要的數(shù)據(jù)(記錄和/或字段)應(yīng)該盡早剝離掉。 3. 只有數(shù)據(jù)質(zhì)量問題無法在源應(yīng)用系統(tǒng)中修復(fù)的時(shí)候才采用數(shù)據(jù)清洗的方法。這些問題可能需要源應(yīng)用系統(tǒng)中相應(yīng)程序的改變,也可能只需要用戶執(zhí)行一個(gè)數(shù)據(jù)清掃的任務(wù)。 4. 數(shù)據(jù)轉(zhuǎn)換時(shí),確證滿足數(shù)據(jù)倉庫的數(shù)據(jù)參考完整性要求。 5. 采用參數(shù)化的設(shè)計(jì)方法,以便新的條件和規(guī)則增加時(shí),只需要做最少的配置參數(shù)的工作。 6. 轉(zhuǎn)換程序的設(shè)計(jì)采用模塊化的設(shè)計(jì)方法,以便于數(shù)據(jù)倉庫的后續(xù)階段的共享。 4.2 數(shù)據(jù)質(zhì)量檢查和出錯(cuò)處理 4.2.1 數(shù)據(jù)質(zhì)量檢查 數(shù)據(jù)質(zhì)量檢查是為了保證數(shù)據(jù)倉庫中數(shù)據(jù)的正確性,防止不符合規(guī)則的數(shù)據(jù)進(jìn)入數(shù)據(jù)倉庫。由于源業(yè)務(wù)系統(tǒng)的多種多樣,以及對各自業(yè)務(wù)關(guān)注點(diǎn)的不同,很有可能會有一些數(shù)據(jù)是不完整的,也就是不能滿足數(shù)據(jù)倉庫分析功能的需要。為了保證數(shù)據(jù)分析的正確性,我們就需要對這些數(shù)據(jù)進(jìn)行質(zhì)量檢查,使正確的數(shù)據(jù)進(jìn)入數(shù)據(jù)倉庫,同時(shí)在數(shù)據(jù)轉(zhuǎn)換區(qū)內(nèi)保留不完整的數(shù)據(jù),這些被保留的數(shù)據(jù)經(jīng)過數(shù)據(jù)管理員和業(yè)務(wù)人員的共同維護(hù),使之滿足數(shù)據(jù)倉庫分析功能的需要,并能正確反映業(yè)務(wù)系統(tǒng)的實(shí)際情況。 由于數(shù)據(jù)質(zhì)量檢查內(nèi)容的不同,我們在數(shù)據(jù)ETL的不同階段進(jìn)行不同的數(shù)據(jù)質(zhì)量檢查任務(wù),并根據(jù)檢查結(jié)果進(jìn)行相應(yīng)的出錯(cuò)處理。 4.2.2 出錯(cuò)級別 將源數(shù)據(jù)的質(zhì)量分為三級:正常級、警告級和嚴(yán)重錯(cuò)誤級。三種定義為: l 正常級: 數(shù)據(jù)符合業(yè)務(wù)規(guī)則所賦予的意義和數(shù)據(jù)庫數(shù)據(jù)格式的定義。 l 警告級: 源數(shù)據(jù)的非關(guān)鍵屬性殘缺、內(nèi)容和長度不符規(guī)范等一些非關(guān)鍵錯(cuò)誤。 l 錯(cuò)誤級: 數(shù)據(jù)質(zhì)量發(fā)現(xiàn)嚴(yán)重的錯(cuò)誤,不能啟動(dòng)數(shù)據(jù)轉(zhuǎn)換和加載過程。 4.2.3 出錯(cuò)處理設(shè)計(jì) 如果在檢查過程中發(fā)現(xiàn)了存在有警告級和錯(cuò)誤級錯(cuò)誤,則將錯(cuò)誤記錄的信息記錄在檢查錯(cuò)誤結(jié)果表中,根據(jù)不同的錯(cuò)誤級別采取不同的處理方式: l 警告級: 記錄出錯(cuò)信息,可以繼續(xù)后續(xù)工作。 l 錯(cuò)誤級: 只要存在錯(cuò)誤級錯(cuò)誤,則停止執(zhí)行后續(xù)工作,需要系統(tǒng)維護(hù)人員現(xiàn)場做出相應(yīng)的處理,修改正確后,重新執(zhí)行數(shù)據(jù)質(zhì)量檢查工作。- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- IBM 數(shù)據(jù)倉庫 解決方案
鏈接地址:http://m.jqnhouse.com/p-6576538.html