亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于MGO的數(shù)據(jù)倉(cāng)庫(kù)ETL過(guò)程構(gòu)建方法

        2014-12-14 07:08:28余肖生吳西燕王東娟王緩緩
        關(guān)鍵詞:數(shù)據(jù)庫(kù)信息方法

        余肖生,吳西燕,王東娟,王緩緩,蔣 彬

        (三峽大學(xué)計(jì)算機(jī)與信息學(xué)院,湖北宜昌 443002)

        在數(shù)據(jù)倉(cāng)庫(kù)構(gòu)建過(guò)程中,作業(yè)量最大、日常運(yùn)行中出現(xiàn)問(wèn)題最多的是從業(yè)務(wù)數(shù)據(jù)庫(kù)向數(shù)據(jù)倉(cāng)庫(kù)抽取、變換、集成數(shù)據(jù)的作業(yè),即 ETL[1]。ETL 過(guò)程在數(shù)據(jù)倉(cāng)庫(kù)的建設(shè)與維護(hù)中占據(jù)了相當(dāng)重要的位置[2]。ETL過(guò)程設(shè)計(jì)的優(yōu)劣已經(jīng)成為數(shù)據(jù)倉(cāng)庫(kù)建設(shè)中降低維護(hù)成本、提高ETL過(guò)程執(zhí)行效率的關(guān)鍵。本文首先對(duì)現(xiàn)有ETL過(guò)程的構(gòu)建方法及其發(fā)展進(jìn)行分析比較,并指出其不足;在此基礎(chǔ)上,介紹基于MGO(通用操作符)的ETL過(guò)程的構(gòu)建方法,并將其與現(xiàn)有ETL過(guò)程的構(gòu)建方法進(jìn)行比較;最后以一個(gè)通用操作符(平面文件加載器)的實(shí)現(xiàn)為例,描述通用操作符的實(shí)現(xiàn)流程。

        1 現(xiàn)有ETL比較

        1.1 手工ELT

        在數(shù)據(jù)倉(cāng)庫(kù)概念提出之前,決策支持系統(tǒng)概念已經(jīng)被人們廣為接受。當(dāng)時(shí),由于沒(méi)有專門工具用來(lái)構(gòu)建收集、整合、存儲(chǔ)、分析操作數(shù)據(jù)的信息平臺(tái),故主要采用手工方式。手工ELT的工作流程如圖1所示[3],其中數(shù)據(jù)采用自然的方法處理:

        1)抽取:相關(guān)操作數(shù)據(jù)以某種方式從操作應(yīng)用程序中抽取并直接轉(zhuǎn)移到信息平臺(tái)或信息平臺(tái)的一個(gè)投影系統(tǒng)上。

        2)加載:利用相應(yīng)DBMS提供的加載工具,將數(shù)據(jù)庫(kù)中的這些數(shù)據(jù)加載到該信息平臺(tái)上。

        3)轉(zhuǎn)換:為接下來(lái)的查詢和分析,使用SQL程序轉(zhuǎn)換這些數(shù)據(jù)并存儲(chǔ)在這個(gè)信息平臺(tái)的數(shù)據(jù)庫(kù)中。

        該方法的主要優(yōu)勢(shì)在于它的高性能,尤其是在信息平臺(tái)的轉(zhuǎn)換階段;其不足之處在于生產(chǎn)率低、質(zhì)量低、管理繁瑣、文檔質(zhì)量無(wú)法達(dá)到滿意的效果。

        圖1 手工ELT的工作流程

        1.2 工具輔助的ETL

        為了提高生產(chǎn)率和程序質(zhì)量,促進(jìn)管理,在近十余年里,研究人員開(kāi)發(fā)了許多數(shù)據(jù)倉(cāng)庫(kù)工具,大多數(shù)工具具有以下的相似點(diǎn):

        1)圖形用戶界面

        2)運(yùn)行時(shí)系統(tǒng)基本以一種離散的方式工作[4-5]:

        抽取(extract)從數(shù)據(jù)源(如平面文件或數(shù)據(jù)庫(kù)表)抽取數(shù)據(jù),并將它們送到ETL服務(wù)器,而不是直接進(jìn)入信息平臺(tái),在ETL服務(wù)器中使用工具處理和轉(zhuǎn)換數(shù)據(jù)。

        轉(zhuǎn)換(transform)根據(jù)具體要求,逐行轉(zhuǎn)換ETL服務(wù)器中的數(shù)據(jù)。

        加載(load)為了后續(xù)的查詢和分析,將已轉(zhuǎn)換的數(shù)據(jù)加載到信息平臺(tái)的目標(biāo)數(shù)據(jù)庫(kù)表中。

        這些功能復(fù)雜的工具可以按照獨(dú)立于復(fù)雜信息平臺(tái)系統(tǒng)的不同需求設(shè)計(jì)。此類ETL體系的結(jié)構(gòu)如圖2所示。該方法存在以下不足[3,7]:

        1)配置弱??紤]到處理能力,相對(duì)于數(shù)據(jù)庫(kù)服務(wù)器而言,ETL服務(wù)器的配置要弱一些。

        2)不適合的技術(shù)。ETL服務(wù)器采用的典型逐行處理模式效率不高,尤其是在需要處理的數(shù)據(jù)量很大時(shí)。然而,在數(shù)據(jù)倉(cāng)庫(kù)實(shí)踐中,大數(shù)據(jù)量處理是數(shù)據(jù)倉(cāng)庫(kù)的特色。有效處理大數(shù)據(jù)量是用于承載數(shù)據(jù)倉(cāng)庫(kù)的專業(yè)數(shù)據(jù)庫(kù)管理系統(tǒng)的主要需求之一。

        3)繁忙的數(shù)據(jù)轉(zhuǎn)換。待處理的數(shù)據(jù)通過(guò)網(wǎng)絡(luò)連接來(lái)回傳輸至整個(gè)系統(tǒng)邊界,在一些情況下,這些連接并非足夠強(qiáng),一定程度上降低了處理性能。

        圖2 工具輔助的ETL流程

        1.3 工具輔助的ELT

        近幾年,為了提高系統(tǒng)的性能,研究人員對(duì)現(xiàn)有數(shù)據(jù)倉(cāng)庫(kù)工具進(jìn)行了根本性的修改,并加快了新工具的開(kāi)發(fā)速度。許多現(xiàn)有的有代表性的數(shù)據(jù)倉(cāng)庫(kù)工具被移植到以下修改的ELT目錄中,如圖3 所示[6-8]。

        圖3 工具輔助的ELT流程

        1)在數(shù)據(jù)倉(cāng)庫(kù)工具的控制下,從操作應(yīng)用中抽取有關(guān)操作數(shù)據(jù)并直接轉(zhuǎn)移到信息平臺(tái)或信息平臺(tái)的投影系統(tǒng)中。

        2)在數(shù)據(jù)倉(cāng)庫(kù)工具的控制下,這些數(shù)據(jù)被加載到信息平臺(tái)的數(shù)據(jù)庫(kù)中。

        3)為了后續(xù)的查詢和分析,在數(shù)據(jù)倉(cāng)庫(kù)工具的控制下,在信息平臺(tái)轉(zhuǎn)換并在信息平臺(tái)的數(shù)據(jù)庫(kù)中存儲(chǔ)這些數(shù)據(jù)。

        該方式保留了圖形用戶界面,性能也得到了一定改善。

        1.4 3種構(gòu)建方法的比較

        通過(guò)前面的分析,筆者將以上3種方法在性能、生產(chǎn)率、軟件質(zhì)量、管理程序、文檔質(zhì)量等5方面進(jìn)行比較。比較時(shí),采用A、B兩個(gè)等級(jí)(A優(yōu)于B),每個(gè)等級(jí)用后綴(+、-)表示其程度,如表1所示。

        表1 3種構(gòu)建方法的比較

        2 基于MGO的數(shù)據(jù)倉(cāng)庫(kù)ETL構(gòu)建方法

        通過(guò)表1可以看出:上述3種構(gòu)建方法均存在不足之處,尤其是其中許多活動(dòng)是重復(fù)的。為了克服這些不足,本文提出構(gòu)建數(shù)據(jù)倉(cāng)庫(kù)ETL的新方法,即基于元數(shù)據(jù)驅(qū)動(dòng)的通用操作符(metadata-driven generic operator,MGO)的構(gòu)建方法。該方法的中心思想是:在ETL過(guò)程中,考慮到有些活動(dòng)是重復(fù)的,而有些不是,故將重復(fù)的和不重復(fù)的活動(dòng)區(qū)分開(kāi),讓重復(fù)的活動(dòng)僅執(zhí)行一次。為了區(qū)分這些活動(dòng),將數(shù)據(jù)倉(cāng)庫(kù)里的活動(dòng)分為通用知識(shí)和特定對(duì)象的元數(shù)據(jù)(object-specific metadata)。所謂通用知識(shí),是指在感興趣領(lǐng)域里具有普適性的知識(shí),有時(shí)也稱領(lǐng)域通用知識(shí)(domain-generic knowledge)。例如,SQL語(yǔ)法中的所有 CREATE、DELETE 語(yǔ)句,編輯操作中的 copy、paste、search、replace等。特定對(duì)象的元數(shù)據(jù)是指具有專指性的知識(shí)。元數(shù)據(jù)主要分為描述性元數(shù)據(jù)(descriptive metadata)和操作元數(shù)據(jù)(operative metadata)。描述性元數(shù)據(jù)目標(biāo)是描述相應(yīng)的主題,如加載程序的文檔等;而操作元數(shù)據(jù)定義了系統(tǒng)中的操作/系統(tǒng)對(duì)象和它們之間的關(guān)系,確定了系統(tǒng)的行為或隨后的狀態(tài)。例如,一個(gè)表的列或者從一個(gè)源表到目標(biāo)表的列映射都是操作元數(shù)據(jù)。前者通常存儲(chǔ)在系統(tǒng)目錄中,由系統(tǒng)自動(dòng)維護(hù);而后者存儲(chǔ)在用戶/工具定義的目錄中,由系統(tǒng)構(gòu)造器手動(dòng)維護(hù)。在數(shù)據(jù)倉(cāng)庫(kù)ETL構(gòu)建中,領(lǐng)域通用知識(shí)是重復(fù)的,而特定對(duì)象的元數(shù)據(jù)則不能重復(fù)。因此,對(duì)每個(gè)具體的對(duì)象(如表或映射),它必須單獨(dú)、專門地對(duì)待。事實(shí)上,每個(gè)表有自己的定義元數(shù)據(jù),每個(gè)列有自己指定的元數(shù)據(jù),每個(gè)目標(biāo)列則有自己來(lái)自相應(yīng)的源應(yīng)用的列的映射。

        本文構(gòu)建新方法的工作流如圖4所示,與前述工具輔助的ELT方法類似,但沒(méi)有輔助工具。事實(shí)上,在生產(chǎn)率、軟件質(zhì)量、文檔質(zhì)量、管理程序和性能等關(guān)鍵方面,本文方法優(yōu)于現(xiàn)代專業(yè)的數(shù)據(jù)倉(cāng)庫(kù)工具使用的方法,且成本并未因此增加。具體步驟如下:

        1)數(shù)據(jù)源。主要從源應(yīng)用的表中抽取數(shù)據(jù),并將它們轉(zhuǎn)移到數(shù)據(jù)倉(cāng)庫(kù)的平面數(shù)據(jù)文件區(qū);

        2)MGO。此方法主要依靠12個(gè)基本操作符完成數(shù)據(jù)源到數(shù)據(jù)倉(cāng)庫(kù)的轉(zhuǎn)換與加載。

        3)數(shù)據(jù)庫(kù)服務(wù)器。按照存儲(chǔ)格式要求,將通過(guò)MGO轉(zhuǎn)換過(guò)來(lái)的數(shù)據(jù)存儲(chǔ)于此。

        3 實(shí)例研究

        從圖4可以看出:基于元數(shù)據(jù)驅(qū)動(dòng)的通用操作符的構(gòu)建是此類新方法的核心。圖5給出了平面文件加載器(12個(gè)基本操作符之一)的構(gòu)建和實(shí)現(xiàn)流程。其核心任務(wù)是:將平面數(shù)據(jù)文件通過(guò)控制文件轉(zhuǎn)換為數(shù)據(jù)倉(cāng)庫(kù)中的表。為了實(shí)現(xiàn)這一過(guò)程,首先要利用存儲(chǔ)過(guò)程,按照控制文件的格式將元數(shù)據(jù)中的字段抽取出來(lái),每一個(gè)字段寫成一個(gè)控制文件。實(shí)現(xiàn)過(guò)程如下:

        (此處?為通配符,根據(jù)實(shí)際情況替換成相應(yīng)的字符):

        SQL*PLUS

        SPOOL‘控制文件名’

        SELECT Text FROM WT

        ORDER BY No

        SPOOL OFF

        Sql_str= ’??????’

        Echo‘USER_ID=???,PW=???,CONTROL=’控制文件名’>f.pmf

        Sqlldr PARFILE=f.pmf

        這種方法實(shí)現(xiàn)了應(yīng)用系統(tǒng)中的批量平面數(shù)據(jù)文件到數(shù)據(jù)倉(cāng)庫(kù)對(duì)應(yīng)表的自動(dòng)導(dǎo)入,大大降低了數(shù)據(jù)倉(cāng)庫(kù)ETL過(guò)程的復(fù)雜度。蔣彬等將這一方法應(yīng)用于銀行、保險(xiǎn)等類型企業(yè)數(shù)據(jù)倉(cāng)庫(kù)ETL過(guò)程構(gòu)建,并取得了良好的效果。

        圖4 基于MGO的數(shù)據(jù)倉(cāng)庫(kù)ETL構(gòu)建流程

        圖5 平面文件加載器的構(gòu)建和實(shí)現(xiàn)流程

        4 結(jié)束語(yǔ)

        從實(shí)用角度來(lái)看,本文提出的方法使得構(gòu)建一個(gè)復(fù)雜體系結(jié)構(gòu)的數(shù)據(jù)倉(cāng)庫(kù)過(guò)程得到簡(jiǎn)化,從而即使在非常不利的數(shù)據(jù)源情況下,依然可以得到高質(zhì)量數(shù)據(jù)。從技術(shù)角度來(lái)看,這種方法代表了一種數(shù)據(jù)倉(cāng)庫(kù)建設(shè)的全新范式,它將使數(shù)據(jù)倉(cāng)庫(kù)的構(gòu)建不再是一個(gè)復(fù)雜的問(wèn)題。

        [1]張寧,賈自艷,史忠植.數(shù)據(jù)倉(cāng)庫(kù)中ETL技術(shù)的研究[J].計(jì)算機(jī)工程與應(yīng)用,2002(24):213-216.

        [2]張旭峰.ETL若干關(guān)鍵技術(shù)研究[D].上海:復(fù)旦大學(xué),2006:1-15.

        [3]Jiang Bin.Constructing Data Warehouses With Metadatadriven Generic Operators,and more[M].Niederglatt:DBJ Publishing,2011:14-21.

        [4]Thammasak Rujirayanyong A,Jonathan J Shi.A projectoriented data warehouse for construction[J].Automation in Construction,2006(15):800-807.

        [5]Joe Celko.Joe Celko's Analytics and OLAP in SQL[M].San Fransisco:Morgan Kaufmann Publishers,2006:38.

        [6]Vikas Ranjan.A Comparative Study between ETL(Extract-Transform-Load)and E-LT(Extract-Load-Transform)approach for loading data into a Data Warehouse[D].Chico:California State University,2009:2-6.

        [7]Robert J Davenport.ETL vs.ELT:A Subjective View[EB/OL].[2012-10-05].http://www.dataacademy.com/files/ETL-vs-ELT-White-Paper.pdf.

        [8]Sabir Asadullaev.Data warehouse architectures and development strategy[EB/OL].[2012-10-05].https://www.ibm.com/developerworks/mydeveloperworks/blogs/Sabir/resource/DWarchitecturesanddevelopmentstrategy.Guidebook.pdf?lang=en.

        猜你喜歡
        數(shù)據(jù)庫(kù)信息方法
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        數(shù)據(jù)庫(kù)
        可能是方法不對(duì)
        數(shù)據(jù)庫(kù)
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        四大方法 教你不再“坐以待病”!
        Coco薇(2015年1期)2015-08-13 02:47:34
        捕魚
        展會(huì)信息
        91久久精品色伊人6882| 久久九九有精品国产尤物| 国内精品视频成人一区二区| 日韩电影一区二区三区| 婷婷色综合成人成人网小说| 一区二区三区熟妇人妻18| 视频在线观看国产自拍| 国产精品人妻一码二码| 无码中文字幕色专区| 国产女主播强伦视频网站| 日本一二三区在线视频观看| 日韩少妇人妻精品中文字幕| 亚洲人成国产精品无码果冻| 一本一本久久a久久精品综合麻豆| 无码超乳爆乳中文字幕| 国产乱老熟视频乱老熟女1| 国产乱人精品视频av麻豆网站| 久久无码av一区二区三区| 亚洲国产毛片| 按摩师玩弄少妇到高潮hd| 蜜臀av毛片一区二区三区| 国产一精品一av一免费爽爽| 国产成人亚洲综合色婷婷| 国产精品.xx视频.xxtv| 亚洲xx视频| 一道之本加勒比热东京| 亚洲a∨无码男人的天堂| 久久免费国产精品| 极品少妇在线观看视频 | 亚洲av福利院在线观看 | 婚外情长久的相处之道| 中文无码一区二区不卡av| 久久久久久久久久久熟女AV| 一级黄色一区二区三区视频| 日韩av无码社区一区二区三区| a级国产乱理论片在线观看| 99久久精品国产片| 在线天堂av一区二区| 亚洲综合成人婷婷五月网址| 99精品一区二区三区无码吞精 | 亚洲精品视频在线一区二区|