欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
用DataStage進(jìn)行數據整合: 第 1 部分
數據整合的核心內容是從數據源中抽取數據,然后對這些數據進(jìn)行轉化,最終加載的目標數據庫或者數據倉庫中去,這也就是我們通常所說(shuō)的 ETL 過(guò)程。IBM WebSphere DataStage 為整個(gè) ETL 過(guò)程提供了一個(gè)圖形化的開(kāi)發(fā)環(huán)境。

引言

傳統的數據整合方式需要大量的手工編碼,而采用 IBM WebSphere DataStage 進(jìn)行數據整合可以大大的減少手工編碼的數量,而且更加容易維護。數據整合的核心內容是從數據源中抽取數據,然后對這些數據進(jìn)行轉化,最終加載的目標數據庫或者數據倉庫中去,這也就是我們通常所說(shuō)的ETL過(guò)程。IBM WebSphere DataStage 為整個(gè) ETL 過(guò)程提供了一個(gè)圖形化的開(kāi)發(fā)環(huán)境。本文將從以下幾個(gè)方面來(lái)介紹 IBM WebSphere DataStage:

1. 數據源連接能力

2. 完備的開(kāi)發(fā)環(huán)境

3. ETL Job 的并行執行能力

4. 開(kāi)發(fā)一個(gè)簡(jiǎn)單的 ETL Job





回頁(yè)首


出色的數據源連接能力

數據整合工具的數據源連接能力是非常重要的,這將直接決定它能夠應用的范圍。IBM WebSphere DataStage 能夠直接連接非常多的數據源,包括:

1、 文本文件

2、 XML 文件

3、 企業(yè)應用程序,比如 SAP、Siebel、Oracle 以及PeopleSoft

4、 幾乎所有的數據庫系統,比如 DB2、Oracle、SQL Server、Informix等

5、 Web services

6、 WebSphere MQ

正是因為這么好的連接能力,IBM WebSphere DataStage 使用戶(hù)能夠專(zhuān)注于數據轉換的邏輯而不用太擔心數據的抽取和加載。





回頁(yè)首


完備的開(kāi)發(fā)環(huán)境

IBM WebSphere DataStage 的開(kāi)發(fā)環(huán)境是基于 C/S 模式的,通過(guò) DataStage Client 連接到DataStage Server 上進(jìn)行開(kāi)發(fā)。這里有一點(diǎn)需要注意,DataStage Client 只能安裝在 Windows 平臺上面。而 DataStage Server 則支持多種平臺,比如 Windows、Redhat Linux、AIX、HP-UNIX。

DataStage Client 有四種客戶(hù)端工具。分別是 DataStage Administrator、DataStage Designer、DataStage Manager、DataStage Director。接下來(lái)首先介紹這幾種客戶(hù)端工具在 DataStage 架構中所處的位置以及它們如何協(xié)同工作來(lái)開(kāi)發(fā) ETL Job 的,接著(zhù)再分別詳細介紹每個(gè)工具的功能。

圖 1 描述了 IBM WebSphere DataStage 的整個(gè)系統架構。DataStage 的客戶(hù)端工具連接到DataStage Server 上進(jìn)行 ETL Job 的開(kāi)發(fā),DataStage Server 再與后臺的數據庫連接起來(lái)進(jìn)行數據處理。DataStage 的客戶(hù)端工具之間的是一個(gè)相互合作的關(guān)系。下面通過(guò)介紹 ETL Job的開(kāi)發(fā)過(guò)程來(lái)介紹他們之間的這種關(guān)系。

ETL Job開(kāi)發(fā)流程

1. 用 DataStage Administrator 新建一個(gè)項目;

2. 用 DataStage Designer 連接到這個(gè)新建的項目上進(jìn)行ETL Job的設計;

3. 用 DataStage Director 對設計好的ETL Job設置運行的模式,比如多長(cháng)時(shí)間運行一次ETL Job;

4.用 DataStage Manager 進(jìn)行ETL Job的備份等。


圖 1:IBM WebSphere DataStage 架構圖

DataStage Administrator

DataStage Administrator 的主要功能有以下幾個(gè):

1. 設置客戶(hù)端和服務(wù)器連接的最大時(shí)間。

以管理員的身份登陸 DataStage Administrator。你就會(huì )看到如下圖所示的畫(huà)面。在這里你可以設置客戶(hù)端和服務(wù)器的最大連接時(shí)間,默認的最大連接時(shí)間是永不過(guò)期。最大連接時(shí)間的意思就是如果客戶(hù)端和服務(wù)器的連接時(shí)間超過(guò)了最大連接時(shí)間,那么客戶(hù)端和服務(wù)器之間的連接將被強行斷開(kāi)。



2. 添加和刪除項目

在 Projects 這個(gè)標簽中,可以新建或者刪除項目,以及設置已有項目的屬性。這里有必要介紹一下項目的概念,要用 DataStage 進(jìn)行 ETL 的開(kāi)發(fā),首先就要用 DataStage Administrator 新建一個(gè)項目,然后在這個(gè)項目里面進(jìn)行 ETL Job 的開(kāi)發(fā)。



3. License的管理

可以在Licensing標簽中更新License。



DataStage Designer

DataStage Designer是ETL Job開(kāi)發(fā)的核心環(huán)境。值得注意的是,登陸DataStage Designer 的時(shí)候,不僅要指定DataStage Server 的IP,而且要指定連接到這個(gè)DataStage Server上的哪個(gè)項目上面,上面已經(jīng)提到DataStage的項目是由DataStage Administrator 來(lái)創(chuàng )建的。DataStage Designer的主要功能可以概括為以下三個(gè)方面:

1. ETL Job的開(kāi)發(fā)

DataStage Designer里面包含了DataStage為ETL開(kāi)發(fā)已經(jīng)構建好的組件, 主要分為兩種,一種是用來(lái)連接數據源的組件,另一種是用來(lái)做數據轉換的組件。利用這些組件,開(kāi)發(fā)人員可以通過(guò)圖形化的方式進(jìn)行ETL Job的開(kāi)發(fā)。

2. ETL Job的編譯

開(kāi)發(fā)好ETL Job后,可以直接在DataStage Designer里面進(jìn)行編譯。如果編譯不通過(guò),編譯器會(huì )幫助開(kāi)發(fā)人員定位到出錯的地方。

3. ETL Job的執行

編譯成功后,ETL Job就可以執行了,在DataStage Designer里面可以運行ETL Job。ETL Job的運行情況可以在DataStage Director中看到,這方面的內容將在介紹DataStage Director的時(shí)候提到。

DataStage Manager

DataStage Manager主要用來(lái)管理項目資源。一個(gè)項目可能包含多個(gè)ETL Job,可以用DataStage Manager把一個(gè)項目里面的ETL Job導出來(lái)。然后再用DataStage Manager導入到另外一個(gè)項目中去,利用這個(gè)功能一方面可以實(shí)現ETL Job的備份,另一方面就是可以在多個(gè)項目之間來(lái)重復使用開(kāi)發(fā)好的ETL Job。在DataStage Manager里面可以把數據庫中的表結構直接導入到項目中來(lái),供這個(gè)項目中的所有ETL Job使用。DataStage Designer也提供了從數據庫中直接導入表結構的功能。

DataStage Director

DataStage Director 主要有以下兩個(gè)功能:

1. 監測ETL Job的運行狀態(tài)

ETL Job在DataStage Designer中編譯好后,可以通過(guò)DataStage Director來(lái)運行它。前面在介紹DataStage Designer的時(shí)候提到在DataStage Designer中也可以運行ETL Job,但是如果要監測ETL Job的運行情況還是要登陸到DataStage Director中。在這里,你可以看到ETL Job運行的詳細的日志文件,還可以查看一些統計數據,比如ETL Job每秒所處理的數據量。

2. 設置何時(shí)運行ETL Job

ETL Job開(kāi)發(fā)完成后,我們可能希望ETL Job在每天的某個(gè)時(shí)間都運行一次。DataStage Director為這種需求提供了解決方案。在DataStage Director中可以設置在每天、每周或者每月的某個(gè)時(shí)間運行ETL Job。





回頁(yè)首


ETL Job的并行執行

ETL Job的并行執行是IBM WebSphere DataStage企業(yè)版的一大特色。ETL Job開(kāi)發(fā)好以后,可以在多臺裝有DataStage Server的機器上并行執行,這也是傳統的手工編碼方式難以做到的。這樣,DataStage就可以充分利用硬件資源。而且,當你的硬件資源升級的時(shí)候也不用修改已經(jīng)開(kāi)發(fā)好的ETL Job,只需要修改一個(gè)描述硬件資源的文件即可。并行執行能力是DataStage所能處理數據的速度可以得到趨近于線(xiàn)性的擴展,輕松處理大量數據

。



回頁(yè)首


開(kāi)發(fā)一個(gè)簡(jiǎn)單的ETL Job

我們將要開(kāi)發(fā)一個(gè)非常簡(jiǎn)單的ETL Job,使大家對用DataStage進(jìn)行ETL開(kāi)發(fā)有一個(gè)總體的認識。將要開(kāi)發(fā)的ETL Job是把DB2數據庫Source中的表employee的內容導入到另外一個(gè)DB2數據庫Target中的表employee中去。其中兩個(gè)數據庫中的employee表的結構是相同的。employee表的結構為:



這里需要說(shuō)明的是,DB2數據庫的Client端必須和DataStage Server裝在同一臺機器上面。如果要連接的DB2數據庫的Server和DataStage Server不在同一臺機器上面,那么就需要先用和DataStage Server裝在同一臺機器上的DB2的Client端提供的工具"配置助手"把要連接的數據庫添加到DB2的Client端當中。這就為DataStage連接該數據庫做好了準備。另外一點(diǎn)需要注意的是,如果你的DataStage Server是安裝在Windows上的,那么做完上面所描述的事情后就可以用DataStage連接DB2數據庫了,但是如果你的DataStage Server是安裝在Linux或者Unix上面的,你還需要配置DataStage的一個(gè)名字叫dsenv文件。因為我們的例子當中DataStage Server是運行在Linux上面的。我們將以L(fǎng)inux為例講述dsenv文件的配置方法。

1. 配置dsenv文件(Linux環(huán)境)

dsenv文件是主要是用來(lái)存放環(huán)境變量的,這些環(huán)境變量包含了DataStage要用到的類(lèi)庫,以及要連接的數據庫的安裝的路徑等。dsenv文件位于位于文件夾 $DataStage/DSEngine里面,$DataStage/是DataStage的安裝目錄,例如:/home/dsadm/Ascential/DataStage/。

打開(kāi)dsenv文件,在文件的最后加上如下內容:


DB2DIR=/opt/IBM/DB2/V8.1;export DB2DIR            DB2INSTANCE=db2inst1; export DB2INSTANCE            INSTHOME=/home/db2inst1;export INSTHOME            PATH=$PATH:$INSTHOME/sqllib/bin:$INSTHOME/sqllib/adm:$INSTHOME/sqllib/misc            export PATH            LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$INSTHOME/sqllib/lib;export LD_LIBRARY_PATH            THREADS_FLAG=native;export THREADS_FLAG            

這些環(huán)境變量用來(lái)描述DB2的安裝路徑、DB2的實(shí)例、以及DB2類(lèi)庫的路徑。配置好這些環(huán)境變量后,我們就可以用DataStage連接DB2了。下面我們正式進(jìn)入開(kāi)發(fā)環(huán)節。

2. 新建項目

(1)用DataStage Administrator登錄到DataStage Server。Host system是安裝DataStage Server的主機,輸入它的IP地址或者主機名。另外再輸入用戶(hù)名和密碼后,單擊按鈕"OK";



(2)登錄后,在標簽Projects中可以看到目前這個(gè)DataStage Server上面所有的項目。單擊按鈕"Add"新建一個(gè)項目;



(3)在彈出的對話(huà)框中輸入項目名SampleProject,項目存儲的默認路徑是DataStage安裝路徑的Projects目錄下面,你可以通過(guò)單擊按鈕"Browse"來(lái)改變默認路徑。注意不要鉤上選擇框"Create protected project",因為如果鉤上的話(huà)你所創(chuàng )建的工程將沒(méi)辦法被改變。單擊按鈕"OK";



(4)你會(huì )看到在項目列表里面已經(jīng)有了我們剛創(chuàng )建好的項目SampleProject,單擊按鈕"Close"關(guān)閉DataStage Administrator;



(5)用DataStage Designer登陸到DataSatge Server,輸入DataStage Server的IP或主機名以及用戶(hù)名和密碼,并指定Project為我們剛才創(chuàng )建的項目SampleProject。單擊按鈕"OK";



(6)在DataStage Designer當中單擊File‘New去創(chuàng )建一個(gè)新的ETL Job;



(7)選擇"Parallel Job",單擊按鈕"OK";



(8) 一個(gè)新的ETL Job已經(jīng)創(chuàng )建了,單擊工具欄上的圖標"保存",或者用快捷鍵"Ctrl+S"來(lái)保存,這時(shí)候一個(gè)保存ETL Job的對話(huà)框會(huì )彈出來(lái);



(9)在彈出的對話(huà)框中。在Job name一欄輸入"SampleJob",在Category中輸入"Sample"。單擊按鈕"OK";



(10) 保存好剛創(chuàng )建的ETL Job后,我們用DataStage Designer來(lái)導入數據庫的表結構。在DataStage Designer的左下方的Repository中右鍵單擊"Table Definition"。然后選擇 Import‘Pug-in Meta Data Definitions…;



(11)在彈出的對話(huà)框中選擇DSDB2,單擊按鈕OK;



(12) 在彈出的對話(huà)框中,Server Name選擇Source。輸入用戶(hù)名和密碼,再鉤上Tables選擇框之后單擊按鈕Next;



(13)選擇表employee,把要保存到的目錄改成PlugIn\Source。然后單擊按鈕 Import.;



(14)重復步驟 10-13把存儲在Target數據庫中的表employee的表結構導入進(jìn)來(lái),這次存放的路徑改成PlugIn\Target。完成后,你會(huì )在Repository中看到你導入的表結構;



(15)從左邊的palette中拖入兩個(gè)DB2/UDB API Stage到右邊的面板上。DB2/UDB2 API Stage是用來(lái)連接DB2數據庫的,我們這兩個(gè)DB2/UDB API Stage一個(gè)用來(lái)連接數據庫source,另一個(gè)用來(lái)連接數據庫Target;



(16)右鍵單擊左邊的DB2/UDB API Stage不要放開(kāi),一直拖拽鼠標到右邊的DB2/UDB2 API Stage上面。這時(shí)候在這兩個(gè)Stage之間會(huì )出現一條連線(xiàn),代表了數據的流向。下面我們將配置這兩個(gè)Stage的屬性;



(17)左鍵雙擊左邊的DB2/UDB API Stage,會(huì )彈出如下圖所示的屬性框。在標簽Stage的子標簽General中,設置Stage name為Source,Server name為Source,User ID和 Password設置為右權限訪(fǎng)問(wèn)這個(gè)數據庫的用戶(hù)名和密碼。Transaction Isolation的默認的選項是Cursor Stability,保持默認選項然后單擊標簽Output;



(18)在標簽Output的子標簽General中,輸入Table names為employee,并在Query type下拉框中選擇Generated SQL Query。這樣DataStage會(huì )自動(dòng)幫你生成大部分的SQL代碼。然后單擊子標簽Columns;



(19)在Columns子標簽中單擊按鈕Load去導入剛才從數據庫中導進(jìn)來(lái)的表結構;



(20)在彈出的對話(huà)框中選擇目錄PlugIn\Source中的表結構employee,然后單擊按鈕OK;



(21) 在彈出的對話(huà)框中選擇要導入的表的列,默認是全選,保持默認并單擊按鈕OK;



(22) 這時(shí)候你會(huì )看到表的字段已經(jīng)被導入進(jìn)來(lái)。單擊子標簽SQL;



(23) 在子標簽SQL中,你會(huì )看到系統自動(dòng)生成的SQL語(yǔ)句。單擊按鈕 View Data查看表employee中的數據;



(24)當前employee表中有兩條數據。單擊按鈕Close關(guān)掉數據查看窗口;



(25)現在我們開(kāi)始編輯用來(lái)連接目標數據庫的DB2/UDB API Stage的屬性。雙擊這個(gè)Stage,彈出的屬性設置窗口如下圖所示。在標簽Stage的子標簽General中,Stage name設置為T(mén)arget,Server name設置為T(mén)arget,User ID和Password分別設置為有權限對Target數據庫進(jìn)行操作的用戶(hù)名和密碼。其他屬性保持默認值,然后單擊標簽Input;



(26)在標簽Input的子標簽General中,設置Table name為employee,Update action選擇 Insert rows without cleaning。Create table action選擇Do not create target table。然后單擊子標簽Columns;



(27)在子標簽Columns中,你會(huì )發(fā)現已經(jīng)有表結構load進(jìn)來(lái)了,這個(gè)表結構是和source數據庫中的employee表的結構一致的。單擊按鈕OK并保存ETL Job;



(28)在工具欄中單擊圖標"編譯"對剛開(kāi)發(fā)完的ETL Job進(jìn)行編譯;



(29)編譯過(guò)程中會(huì )彈出一個(gè)對話(huà)框顯示編譯的進(jìn)行情況。最終ETL Job編譯成功后對話(huà)框中會(huì )顯示如下圖中所示的消息:"Job successfully compiled with no errors";



(30)編譯成功后,我們打開(kāi)DataStage Director來(lái)運行我們開(kāi)發(fā)的ETL Job。從DataStage Designer中打開(kāi)DataStage Director的方法為:從菜單欄中選擇Tools‘Run Director;



(31)打開(kāi)DataStage Director后你會(huì )在Sample目錄下面發(fā)現我們開(kāi)發(fā)好的ETL Job SampleJob,狀態(tài)為Compiled。選擇SampleJob,然后單擊工具欄中的"運行"按鈕;



(32)在彈出的對話(huà)框中可以設置運行的參數,比如出現多少個(gè)warning后ETL Job會(huì )自動(dòng)中止掉。我們保持這個(gè)對話(huà)框中的默認設置,單擊按鈕Run;



(33) 這時(shí)候你會(huì )注意到SampleJob的狀態(tài)從Compiled變成了Running,等到SampleJob的狀態(tài)變成Finished后,該ETL Job的運行就結束了;



(34)如下圖所示,SampleJob的狀態(tài)變成了Finished。SampleJob成功結束運行;



(35)到DataStage Designer中,用View Data功能查看目標數據庫Target中employee表中的數據。你會(huì )發(fā)現和源數據庫source中的employee表中的數據是一樣的。也說(shuō)明我們開(kāi)發(fā)的ETL Job成功的完成了我們想要它完成的任務(wù)。







回頁(yè)首


總結

本文首先介紹IBM WebSphere DataStage在數據源連接能力以及并行執行能力兩方面的特性,接著(zhù)介紹了它的開(kāi)發(fā)環(huán)境。最后用一個(gè)簡(jiǎn)單的ETL Job演示了用IBM WebSphere DataStage進(jìn)行ETL開(kāi)發(fā)的過(guò)程,使大家對這個(gè)過(guò)程有了一個(gè)比較清楚的了解。IBM WebSphere DataStage提供的圖形化的環(huán)境使我們更容易進(jìn)行開(kāi)發(fā)和維護。



關(guān)于作者

 

周登朋,上海交通大學(xué)研究生,熟悉DB2, IBM WebSphere DataStage. 對數據整合以及Java技術(shù)非常感興趣。 Email:zhoudengpeng@yahoo.com.cn

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
kettle
ETL工具(數據倉庫)
SQL2005的SSIS與Oracle的遷移性能
主流ETL工具選型
ETL常用的三種工具介紹及對比Datastage,Informatica
IBM Infosphere Data Replication 產(chǎn)品族 Replication Server 與 Change Data Capture 的異同比較
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久