文/韓丹
隨著信息化建設(shè)的發(fā)展,企業(yè)斥巨資建立了眾多信息系統(tǒng),但由于企業(yè)信息系統(tǒng)是逐步建立起來的,基于不同時期信息技術(shù)而建立起來的業(yè)務(wù)系統(tǒng)采用不同數(shù)據(jù)庫并以不同的表現(xiàn)形式描述數(shù)據(jù),因此形成了大量的信息孤島,造成大量的冗余數(shù)據(jù)和用戶的重復(fù)勞動。
ODI作為典型的ETL工具,本身采用JAVA開發(fā),可以實現(xiàn)跨平臺,它不僅能夠支持幾乎所有的關(guān)系型數(shù)據(jù)庫,還能支持多維數(shù)據(jù)庫,適用于異構(gòu)信息系統(tǒng)間的數(shù)據(jù)交換。另外,針對傳統(tǒng)ETL工具需要獨立的ETL服務(wù)器,性能較差,投入成本較高的問題,ODI不需要新的服務(wù)器,利用已有數(shù)據(jù)庫資源,建立接口通道,實現(xiàn)數(shù)據(jù)的批量裝載。其可擴充性強、易管理和低成本的特性適用于企業(yè)異構(gòu)信息系統(tǒng)數(shù)據(jù)集成的使用。
以國內(nèi)某大型能源集團為例,該集團業(yè)務(wù)系統(tǒng)多采用關(guān)系關(guān)系型數(shù)據(jù)庫存放數(shù)據(jù),而預(yù)算管理系統(tǒng)采用多維多維數(shù)據(jù)庫存放數(shù)據(jù)。與關(guān)系型數(shù)據(jù)庫不同的是,多維數(shù)據(jù)庫采用立方體塊存儲模式,即將數(shù)據(jù)存放在一個n維數(shù)組中,而不是像關(guān)系數(shù)據(jù)庫那樣以記錄的形式存放。兩個系統(tǒng)的集成可以簡單理解為二維數(shù)據(jù)和多維數(shù)據(jù)之間的相互轉(zhuǎn)換,如圖1所示。
由于多維數(shù)據(jù)庫的特性導(dǎo)致預(yù)算管理系統(tǒng)與其他業(yè)務(wù)系統(tǒng)對接時,應(yīng)多考慮如何定義業(yè)務(wù)規(guī)則實現(xiàn)數(shù)據(jù)之間的映射,而不用考慮具體實現(xiàn)細節(jié)。而且對于生產(chǎn)性企業(yè)業(yè)務(wù)數(shù)據(jù)粒度往往很細,從而導(dǎo)致數(shù)據(jù)體量大。在眾多ETL工具中,能滿足短時間內(nèi)大體量數(shù)據(jù)的傳輸要求而且做到不增加額外服務(wù)器成本的,ODI無疑是個不錯的選擇。
(1)搭建物理體系架構(gòu),定義各自技術(shù)及其數(shù)據(jù)服務(wù)器、物理架構(gòu)、物理代理。在ODI工具中建立連同多維和關(guān)系的雙向數(shù)據(jù)傳輸隧道。
圖1
圖2
(2)搭建邏輯體系架構(gòu),定義各自技術(shù)及其關(guān)聯(lián)的邏輯架構(gòu)、邏輯代理。通過邏輯架構(gòu)將物理架構(gòu)與接口模型進行連通。
(3)通過反向工程知識模塊構(gòu)造數(shù)據(jù)模型,分別將多維數(shù)據(jù)庫中的數(shù)據(jù)和關(guān)系數(shù)據(jù)庫中的數(shù)據(jù)通過逆向映射為ODI識別的數(shù)據(jù)格式。
(4)通過加載知識模塊可以從逆向表中有效地提取數(shù)據(jù)到臨時存儲區(qū)。
(5)通過集成知識模塊用于有效地將臨時存儲區(qū)中的數(shù)據(jù)轉(zhuǎn)換為目標(biāo)表。
以該能源集團銷售公司預(yù)算應(yīng)用為例,如圖2所示,該應(yīng)用采用多維數(shù)據(jù)庫存儲,數(shù)據(jù)庫中有6個維度,分別為科目維、組織維、期間維、場景維、區(qū)域維、產(chǎn)品維。每個維度上分別有一個或多個維值:科目維包含銷售收入、銷售成本、銷售毛利;組織維包含銷售公司;期間維包含1月、2月、3月、4月;場景維包含預(yù)算、上年預(yù)計;區(qū)域維包含區(qū)域1、區(qū)域2、區(qū)域3、區(qū)域4、區(qū)域5;產(chǎn)品維包含產(chǎn)品1、產(chǎn)品2、產(chǎn)品3。每個數(shù)據(jù)都是由6個維度叉乘得出。假如一個數(shù)據(jù)塊之存儲2個數(shù)據(jù),那么8個數(shù)據(jù)需要4個數(shù)據(jù)塊存儲。而多維數(shù)據(jù)轉(zhuǎn)化為二維數(shù)據(jù)后則在關(guān)系表中體現(xiàn)為8行記錄,每個維度相應(yīng)的轉(zhuǎn)化為字段,而行記錄則是維值和數(shù)據(jù)。
本文使用ODI工具從實踐角度設(shè)計了一個多維數(shù)據(jù)庫和關(guān)系數(shù)據(jù)庫間數(shù)據(jù)傳輸?shù)慕涌谀P?,該模型可以讓開發(fā)人員集中精力定義業(yè)務(wù)規(guī)則,而不用考慮實現(xiàn)細節(jié)。通過該模型打破企業(yè)預(yù)算管理系統(tǒng)數(shù)據(jù)孤島的現(xiàn)狀,輕松實現(xiàn)異構(gòu)數(shù)據(jù)集成。本文所運用的技術(shù)方法對信息系統(tǒng)具有一定的通用性,可為其他即將實行信息系統(tǒng)數(shù)據(jù)集成的企業(yè)集團提供借鑒。使更多的人更充分地使用已有數(shù)據(jù)資源,減少重復(fù)勞動,節(jié)約建設(shè)成本。