譚煌
摘要:該文針對現(xiàn)有ETL工作流程的創(chuàng)建和執(zhí)行過程中的不足,提出了一種基于邏輯模型的ETL工作流程優(yōu)化方法,并針對云計(jì)算模式對ETL工作流程的執(zhí)行進(jìn)行進(jìn)一步優(yōu)化,通過測試這種兩階段優(yōu)化方法可以大大提高ETL工作流程的執(zhí)行效率。
關(guān)鍵詞:數(shù)據(jù)抽??;轉(zhuǎn)換;加載;云計(jì)算;MapReduce;邏輯模型;流程優(yōu)化
中圖分類號:TP393文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2012)16-3775-03
A Method of Creating and Optimizing ETL Flow being Aimd at Cloud Computing
TAN Huang
(College of Mathematics and Computer Science, Hunan Normal University, Changsha 410081, China)
Abstract: As for shortage of creating and invoking of ETL Flow , we proposal a method of creating and optimizing ETL flow based on log ic model , and Be aimed at cloud computing we optimizing the invoking of ETL flow .Through these optimization , we can improve the effectiveness of invoking ETL flow.
Key words: ETL; cloud computing; map reduce; logic model; flow optimizing
抽取、轉(zhuǎn)換、裝載(ETL)在數(shù)據(jù)倉庫的建立過程中起到了非常核心的作用,它為數(shù)據(jù)倉庫提供及時、高質(zhì)而準(zhǔn)確的數(shù)據(jù)[1]。目前對于ETL工作流程的創(chuàng)建、執(zhí)行調(diào)度及優(yōu)化主要有以下幾種方法:1)通過配置管理ETL工作流程;2)通過并行優(yōu)化ETL流程的執(zhí)行。
通過配置方式構(gòu)造ETL工作流程,定義針對特定執(zhí)行環(huán)境的ETL工作流程的元數(shù)據(jù),開發(fā)人員可以根據(jù)元數(shù)據(jù)創(chuàng)建和管理ETL工作流程。其缺點(diǎn)是:1)針對的是特定執(zhí)行環(huán)境,不具備一般性;2)沒有對ETL工作流程進(jìn)行優(yōu)化。
通過并行優(yōu)化ETL工作流程執(zhí)行,是通過將ETL工作流程中的活動分布多個線程或集群上執(zhí)行,達(dá)到提速的目的。其缺點(diǎn)是:1)使用多線程的方式并行化ETL工作流程受限于機(jī)器的計(jì)算和存儲資源;2)在集群環(huán)境中執(zhí)行ETL工作流程,雖然可以將活動并行執(zhí)行,但是沒有考慮集群環(huán)境中I/O問題,將其擴(kuò)展到云計(jì)算環(huán)境中運(yùn)行會由于I/O問題降低ETL工作流程的執(zhí)行效率。
該文針對在云計(jì)算環(huán)境下創(chuàng)建和優(yōu)化ETL工作流程,主要解決思路是,定義針對云計(jì)算環(huán)境的具有一般性的ETL工作流程邏輯模型;對ETL工作流程的邏輯模型進(jìn)行優(yōu)化;將ETL邏輯模型轉(zhuǎn)換為針對云計(jì)算環(huán)境的物理模型;對物理模型進(jìn)行優(yōu)化。
ETL工作流程的物理模型中描述了流程活動執(zhí)行需要的數(shù)據(jù)操作組件,同時也描述對流程中活動或執(zhí)行組的MapReduce程序的封裝。ETL工作流程執(zhí)行引擎根據(jù)物理模型控制ETL工作流程的執(zhí)行,并通過云計(jì)算環(huán)境客戶端將物理模型中的MapReduce任務(wù)部署到云計(jì)算環(huán)境中并行執(zhí)行。
通過對ETL工作流程進(jìn)行邏輯結(jié)構(gòu)優(yōu)化以及針對云計(jì)算模式mapreduce的優(yōu)化,我們可以大大提高ETL工作流程的執(zhí)行效率,但是在使用元數(shù)據(jù)對ETL進(jìn)行構(gòu)造的過程比較復(fù)雜,需要比較專業(yè)的人員才能完成,所以如何使得該過程簡單是我們下一步需要進(jìn)行的工作。
[1]趙華茗.搭建基于云計(jì)算的開源海量數(shù)據(jù)挖掘平臺[J].現(xiàn)代圖書情報技術(shù),2010(10):76-80.
[2] Simitsis A. Logical Optimization of ETL Workflows[EB/OL]. http://citeseerx.ist.psu.edu/viewdoc/downloaddoi=10.1.1.66.5268&rep= rep1&type=pdf.
[3] Jeffrey Dean. MapReduce: Simpli_ed Data Processing on Large Clusters. Google Inc.2004
[4]格羅斯曼.信息檢索:算法與啟發(fā)式方法[M].2版.北京:人民郵電出版社,2010.