国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

充分運(yùn)用ETL工具,構(gòu)建完整的數(shù)據(jù)倉(cāng)庫(kù)體系結(jié)構(gòu)

2015-05-30 00:38潘敏
科技創(chuàng)新與應(yīng)用 2015年17期
關(guān)鍵詞:接口數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)處理

潘敏

摘 要:隨著信息技術(shù)的發(fā)展和大量業(yè)務(wù)數(shù)據(jù)的積累,數(shù)據(jù)倉(cāng)庫(kù)的開發(fā)建設(shè)受到越來越多的關(guān)注和重視。但是,數(shù)據(jù)倉(cāng)庫(kù)涉及到很多計(jì)算機(jī)理論和技術(shù),而且在設(shè)計(jì)、規(guī)劃和實(shí)施等階段中,也會(huì)遇到各種困難和風(fēng)險(xiǎn)。文章針對(duì)數(shù)據(jù)存儲(chǔ)和處理這個(gè)關(guān)鍵環(huán)節(jié),來介紹構(gòu)建完整的企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)將面臨的技術(shù)難點(diǎn),并根據(jù)實(shí)際項(xiàng)目經(jīng)驗(yàn),給出如何利用ETL工具解決問題的實(shí)踐思路和方法。

關(guān)鍵詞:數(shù)據(jù)倉(cāng)庫(kù);數(shù)據(jù)處理;ETL;ODI;接口

1 數(shù)據(jù)倉(cāng)庫(kù)的體系結(jié)構(gòu)

數(shù)據(jù)倉(cāng)庫(kù)是面向主題的、集成的、相對(duì)穩(wěn)定的、反映歷史變化的數(shù)據(jù)集合。它通常是指一個(gè)數(shù)據(jù)環(huán)境,通過提供當(dāng)前和歷史數(shù)據(jù)來輔助決策支持。數(shù)據(jù)倉(cāng)庫(kù)的組成部分有:數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)庫(kù)、ETL工具、元數(shù)據(jù)、訪問工具、數(shù)據(jù)集市、數(shù)據(jù)倉(cāng)庫(kù)管理等。通過對(duì)多個(gè)異構(gòu)數(shù)據(jù)源進(jìn)行有效的集成,并按照應(yīng)用主題進(jìn)行數(shù)據(jù)重組和展示,就形成了數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng)。由此,根據(jù)應(yīng)用需求的不同,數(shù)據(jù)倉(cāng)庫(kù)的體系結(jié)構(gòu)可以分為以下四種:

(1)兩層結(jié)構(gòu):源數(shù)據(jù)系統(tǒng)經(jīng)過處理直接加載到數(shù)據(jù)倉(cāng)庫(kù);(2)獨(dú)立型數(shù)據(jù)集市:加工成多個(gè)獨(dú)立的數(shù)據(jù)集市來滿足多種應(yīng)用需求;(3)依賴型數(shù)據(jù)集市和操作型數(shù)據(jù)存儲(chǔ):完整的數(shù)據(jù)倉(cāng)庫(kù),多個(gè)源數(shù)據(jù)系統(tǒng)先集成到操作型數(shù)據(jù)存儲(chǔ)(ODS),再轉(zhuǎn)換、加載到數(shù)據(jù)倉(cāng)庫(kù),最后形成部門級(jí)數(shù)據(jù)集市。文章描述的就是此體系結(jié)構(gòu)的構(gòu)建過程。它的特點(diǎn)是:整合多個(gè)復(fù)雜的源數(shù)據(jù)系統(tǒng);實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)轉(zhuǎn)換處理;提供多層次的數(shù)據(jù)訪問;滿足多部門的即獨(dú)立又交叉的應(yīng)用需求;(4)邏輯型數(shù)據(jù)集市和實(shí)時(shí)數(shù)據(jù)倉(cāng)庫(kù):沒有獨(dú)立的數(shù)據(jù)集市,體現(xiàn)數(shù)據(jù)加工的實(shí)時(shí)性。

2 數(shù)據(jù)倉(cāng)庫(kù)的ETL過程

ETL過程是數(shù)據(jù)加工處理過程的統(tǒng)稱,包括三個(gè)部分:抽取、轉(zhuǎn)換和加載。它的目的是為決策支持應(yīng)用提供一個(gè)單一的、權(quán)威的數(shù)據(jù)源。數(shù)據(jù)倉(cāng)庫(kù)的ETL過程是整個(gè)系統(tǒng)實(shí)施的關(guān)鍵環(huán)節(jié),關(guān)系到數(shù)據(jù)倉(cāng)庫(kù)的建設(shè)成效。無論從理論上還是從實(shí)踐上來說,運(yùn)用ETL工具是一個(gè)必需的、明智的選擇。文章以O(shè)racle公司的軟件產(chǎn)品ODI 11g來講解。

3 ETL的技術(shù)難點(diǎn)

數(shù)據(jù)倉(cāng)庫(kù)的數(shù)據(jù)存儲(chǔ)有四個(gè)層次,即源數(shù)據(jù)系統(tǒng)、ODS、企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)和數(shù)據(jù)集市。運(yùn)用ETL工具就是實(shí)現(xiàn)數(shù)據(jù)在這四個(gè)層次中逐層遞進(jìn)的三級(jí)加工處理過程。雖然每一級(jí)處理都具有抽取、轉(zhuǎn)換、加載的處理,但是它們的側(cè)重點(diǎn)還是有區(qū)別的。

(1)源數(shù)據(jù)系統(tǒng)到ODS過程:將多個(gè)異構(gòu)數(shù)據(jù)源集成到統(tǒng)一的數(shù)據(jù)集結(jié)區(qū)ODS,重點(diǎn)是抽取處理,兼有字符集轉(zhuǎn)換、數(shù)據(jù)類型轉(zhuǎn)換等處理。(2)ODS到企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)過程:將操作型數(shù)據(jù)轉(zhuǎn)換成事件型數(shù)據(jù),重點(diǎn)是轉(zhuǎn)換處理,包含清洗、調(diào)和、導(dǎo)出、匹配、合并等多種復(fù)雜處理。(3)企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)到數(shù)據(jù)集市過程:將數(shù)據(jù)按照應(yīng)用需求進(jìn)行組合,重點(diǎn)是加載處理,還涉及到索引、更新等處理。

下面,結(jié)合三級(jí)處理,從四個(gè)方面描述常見的技術(shù)難點(diǎn)及應(yīng)對(duì)。

3.1 數(shù)據(jù)抽取

(1)靜態(tài)抽?。簽榱吮WC源數(shù)據(jù)的一致性和完整性,應(yīng)該抽取操作型數(shù)據(jù)相關(guān)的代碼數(shù)據(jù)和編碼數(shù)據(jù)。這些數(shù)據(jù)特點(diǎn)是量小,變化小,可以采用全量刷新方法。ODI工具中,編制一個(gè)接口,指定源表和目標(biāo)表,確定LKM和IKM,即可實(shí)現(xiàn)。此方法也適用于初次抽取操作型數(shù)據(jù)。(2)增量抽?。涸磾?shù)據(jù)系統(tǒng)包含大量的業(yè)務(wù)數(shù)據(jù),必須通過增量更新的方法才能做到有效的抽取。因此,增量更新問題是一個(gè)最重要、最根本的技術(shù)問題。ODI工具內(nèi)置的變化數(shù)據(jù)捕獲機(jī)制(CDC)能有效地解決這個(gè)問題。實(shí)現(xiàn)思路如下:為源表指定日記知識(shí)模塊JKM;將源表添加到CDC列表,并啟動(dòng)日記;編制接口時(shí),勾選日記記錄的數(shù)據(jù),并指定增量模式的IKM。此外,還可以通過編制ODI過程代碼來利用現(xiàn)有的物化視圖實(shí)現(xiàn)增量更新。

3.2 數(shù)據(jù)轉(zhuǎn)換

(1)關(guān)鍵維度的統(tǒng)一:多個(gè)源數(shù)據(jù)系統(tǒng)集成后,首先面臨的問題就是關(guān)鍵維度的統(tǒng)一。不同的業(yè)務(wù)系統(tǒng)有各自不同的關(guān)鍵維度(如納稅人識(shí)別號(hào),納稅人電子檔案號(hào)),這就必須統(tǒng)一到唯一的維度。解決這個(gè)問題,可以采用對(duì)照表的方法。實(shí)現(xiàn)思路如下:選定主要的、核心的業(yè)務(wù)系統(tǒng)的關(guān)鍵維度;以此維度為主,建立其他業(yè)務(wù)系統(tǒng)的維度對(duì)照表;ODI工具中,編寫接口時(shí),增加連接維度對(duì)照表,增加字段映射。

(2)數(shù)據(jù)表的合并:業(yè)務(wù)系統(tǒng)中可能存在同一事件信息存儲(chǔ)于不同的數(shù)據(jù)表中的情況。ETL過程需要將分散的數(shù)據(jù)轉(zhuǎn)換到一個(gè)數(shù)據(jù)表。雖然可以編寫多個(gè)ODI接口實(shí)現(xiàn),但是不可避免地存在數(shù)據(jù)完整性風(fēng)險(xiǎn),且編制繁瑣、執(zhí)行效率低下。建議采用多個(gè)源數(shù)據(jù)集來實(shí)現(xiàn),思路如下:在ODI接口中,配置多個(gè)源數(shù)據(jù)集,并設(shè)置數(shù)據(jù)集的順序和關(guān)系;以第一順序數(shù)據(jù)集為主,分別設(shè)置目標(biāo)數(shù)據(jù)項(xiàng)映射關(guān)系;指定帶有多數(shù)據(jù)集功能的標(biāo)準(zhǔn)LKM和IKM。

(3)數(shù)據(jù)表的拆分:業(yè)務(wù)系統(tǒng)的單一數(shù)據(jù)表中可能包含同一維度下的不同粒度的數(shù)據(jù),這時(shí)就需要將源表數(shù)據(jù)拆分成多個(gè)目標(biāo)表。常見的情況是,納稅人財(cái)務(wù)報(bào)表數(shù)據(jù)表中同時(shí)包含月報(bào)、季報(bào)和年報(bào)。由于ODI 11G版本中限定每一個(gè)接口只能有一個(gè)目標(biāo)數(shù)據(jù)存儲(chǔ),所以必須采用新的方法來處理。這里,介紹兩種方法來實(shí)現(xiàn)。a.編制多個(gè)接口,封裝在一個(gè)程序包中。步驟如下:分別編制多個(gè)接口對(duì)應(yīng)多個(gè)目標(biāo)表,將最后一個(gè)接口的“清除日記表”選項(xiàng)設(shè)置為真,其余接口該項(xiàng)為假;建立程序包,按順序?qū)脒@批接口。b.改造標(biāo)準(zhǔn)IKM,添加插入數(shù)據(jù)步驟。步驟如下:編制普通的ODI接口,實(shí)現(xiàn)一個(gè)目標(biāo)表的加工;模擬執(zhí)行接口,并分析執(zhí)行語句和順序;獲取與目標(biāo)表相關(guān)的語句;復(fù)制IKM,并編輯,按照原目標(biāo)表語句增加其余目標(biāo)表的執(zhí)行步驟;指定新的IKM。此方法優(yōu)點(diǎn)是執(zhí)行效率高,缺點(diǎn)是改造IKM需要一定的技術(shù)儲(chǔ)備,且增加了項(xiàng)目的整體復(fù)雜度。

(4)最新有效數(shù)據(jù)的問題:分析源數(shù)據(jù)系統(tǒng)的業(yè)務(wù)規(guī)則時(shí),會(huì)發(fā)現(xiàn)有多次記錄業(yè)務(wù)操作數(shù)據(jù)的情況,例如更正申報(bào)。這就要求在數(shù)據(jù)轉(zhuǎn)換時(shí),應(yīng)以操作時(shí)間最新或者操作序號(hào)最大的記錄作為有效數(shù)據(jù)。解決的方法有兩種:a.編寫2個(gè)接口,利用臨時(shí)表存儲(chǔ)最新操作時(shí)間或最大操作序號(hào),然后再關(guān)聯(lián)源表數(shù)據(jù),最后將2個(gè)接口依次導(dǎo)入程序包。b.改造IKM接口,增加2個(gè)新步驟,修改1個(gè)原步驟,具體如下:新增步驟-創(chuàng)建臨時(shí)表;新增步驟-在臨時(shí)表中插入滿足業(yè)務(wù)邏輯的最新有效憑據(jù)(時(shí)間或序號(hào));修改步驟-在目標(biāo)表中插入關(guān)聯(lián)到臨時(shí)表的源表數(shù)據(jù)。

3.3 數(shù)據(jù)加載

(1)創(chuàng)建目標(biāo)表主鍵:雖然在接口中可以指定目標(biāo)表的主鍵,但是標(biāo)準(zhǔn)的ODI處理并不能自動(dòng)生成該主鍵。為此,改造IKM來實(shí)現(xiàn)這個(gè)重要功能:選擇適當(dāng)?shù)腎KM,為其增加一個(gè)選項(xiàng),并指定類型和默認(rèn)值;在原IKM步驟中,增加一個(gè)創(chuàng)建主鍵的新步驟,并在此步驟的選項(xiàng)欄次中勾選新增選項(xiàng)。

此方法的原理是通過一個(gè)自定義選項(xiàng)來控制IKM的邏輯判斷,由用戶通過配置來決定是否執(zhí)行此步驟。

(2)實(shí)現(xiàn)增量的全量加載在企業(yè)級(jí)數(shù)據(jù)倉(cāng)庫(kù)和數(shù)據(jù)集市中,常常需要對(duì)不同粒度的數(shù)據(jù)進(jìn)行加載,例如將月度數(shù)據(jù)加載到年度分析中。為此,文章提出以增量的全量方式加載數(shù)據(jù),提高效率。具體思路如下:獲取增量中所有的月度;刪除目標(biāo)表中包含這些月度的年度數(shù)據(jù);重新獲取源表中包含這些月度的數(shù)據(jù),并加工成年度數(shù)據(jù);加載年度數(shù)據(jù)到目標(biāo)表。

數(shù)據(jù)倉(cāng)庫(kù)是包含一系列理論和技術(shù)的綜合環(huán)境,它的目的是為數(shù)據(jù)分析和決策支持提供歷史的、豐富的、可用的數(shù)據(jù)。由此,數(shù)據(jù)的存儲(chǔ)和處理也緊緊圍繞這一目的而展開。在這個(gè)過程中,工具軟件有著不可替代的重要作用。很多開發(fā)建設(shè)理念就集成在工具軟件的應(yīng)用中。只有充分理解其基礎(chǔ)功能,將其不斷改造完善,才能使這些理念和規(guī)則落地,支撐起整個(gè)數(shù)據(jù)倉(cāng)庫(kù)。

猜你喜歡
接口數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)處理
認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補(bǔ)與極大似然估計(jì)法*
ILWT-EEMD數(shù)據(jù)處理的ELM滾動(dòng)軸承故障診斷
基于數(shù)據(jù)倉(cāng)庫(kù)的住房城鄉(xiāng)建設(shè)信息系統(tǒng)整合研究
分布式存儲(chǔ)系統(tǒng)在液晶面板制造數(shù)據(jù)倉(cāng)庫(kù)中的設(shè)計(jì)
某電站工程設(shè)計(jì)管理與施工、質(zhì)量控制接口關(guān)系研究
脫硝數(shù)據(jù)傳輸系統(tǒng)遠(yuǎn)程無線監(jiān)控技術(shù)的研發(fā)與應(yīng)用
西門子SPPA—T3000在委內(nèi)瑞拉燃機(jī)電廠中的應(yīng)用與接口
探析電力系統(tǒng)調(diào)度中數(shù)據(jù)倉(cāng)庫(kù)技術(shù)的應(yīng)用
中俄網(wǎng)絡(luò)語言編碼接口問題的研究
基于希爾伯特- 黃變換的去噪法在外測(cè)數(shù)據(jù)處理中的應(yīng)用
仙桃市| 孙吴县| 阳朔县| 桂平市| 福建省| 出国| 加查县| 南陵县| 榆林市| 包头市| 江山市| 仙桃市| 仁怀市| 微博| 克东县| 潜山县| 兴国县| 桃源县| 陇川县| 天等县| 浏阳市| 梁山县| 兴国县| 喀喇沁旗| 柳林县| 甘孜县| 新兴县| 吴川市| 东乌珠穆沁旗| 长宁区| 蓬安县| 武陟县| 马边| 建始县| 延庆县| 江西省| 绥阳县| 陕西省| 峨边| 榆林市| 安龙县|