[SQL SERVER][SSIS]Oracle 2 SQL

[SQLSERVER][SSIS]Oracle 2 SQL

由於近年金融機構整併風潮,所以台灣資料整合市場也比以前來的活絡

各大RDBMS廠商也極力開發資料整合套裝軟體,或合併其他優秀整合軟體公司來滿足客戶需求

就小弟知道如IBM併購Ascential、Oracle併購Sunopsis,當然在ETL龍頭寶座還是Informatica莫屬

,但該公司也是很注意這些後起之秀的威脅,OK!相關故事就到這裡了,畢竟我不太會說歷史淵源~~。

基於專案需求小弟最近在Survey相關ETL工具,專案資料來源有Access、Excel、SQL SERVER2000和Oracle

早期摸過ODI(Oracle Data Integrator)可說印象深刻(可不是好用才深刻~XD)

Oracle 2008年併購Sunopsis並推出ODI套裝軟體準備搶佔資料整合市場,但ODI整體我想只有軟體名稱改了

大部分都忠於Sunopsis架構及功能(連預設密碼都用Sunopsis.....Oracle似乎有點懶)

可能小弟已經習慣VS所以用起來只有"痛苦"二字可形容

,外加Oracle white paper喜歡搞得很複雜(頁數多重點少~~他X的!沒想到外國人也喜歡寫作文章)

所以這次就來體驗SSIS2008(官方介紹)在ETL方面的效果

是否能符合小弟最大原則~Simple、faster and High Performance

 

簡單測試Oracle data轉移到SQL2008

Source DB:Oracle 11g x64(11.7),筆數:117655

Destination DB:SQLSERVER 2008 x64

 

Using Microsoft Connector for Oracle by Attunity(須另外下載安裝)

在資料流程簡單拉出Oracle Source和Sql Destination兩個元件

編輯oracle source

image

編輯sql destination

image

執行(F5)

image

花費時間:107.375

 

Using OracleClient Data Provider

編輯ADO.NET source

image

編輯SQL SERVER destination

image

執行(F5)

image

花費時間:278.25

 

Using Oracle provider for OLE DB

編輯OLE DB source

image

編輯SQL SERVER destination

image

執行(F5)

image

花費時間:249.11

總表一覽

Data Provider 花費時間(秒) 記憶體用量
Attunity Oracle 107.375
OracleClient 278.25
Oracle provider for OLE DB 249.11

 

結論:SSIS看來小弟比較上手,當初使用ODI實作異質資料轉換(one by one)我就搞了快一個禮拜(汗顏><)

但使用SSIS這需求只花我一天不到時間(人是習慣的動物一點都不假~XD)

SSIS符合小弟最大宗旨:simple and faster

至於Performance後續得在追蹤測試(不知道超過5百萬以上資料會如何??)。

補充:

測試筆數:5392572

image

image

花費時間:473.187秒,一秒約可以匯入11400筆,Attunity果然表現不凡

不過應該還可以更快,Disable PK、Unique index和trigger同時依CPU資源調整parallel參數,我想應該可以飛起來了

至於記憶體的用量還滿兇的,不過還好記憶體便宜所以一點也不痛。

 

後記:人總是這樣,總是會想應該還有更簡單的軟體吧!所以我用心的看完官方介紹果真發現(用心果然有收穫~哈)

SQL Server Migration Assistant,馬上下載來玩玩。

 

SSMA 2008 FOR ORACLE(簡單方便,從下載、安裝到作業完成花不到我一個小時)

連接ORACLE

image

連結SQL SERVER

image

Mapping Seting

image

Synchronize

image

Migrate Data

image

過程還好都很順利,軟體始終來自於人性。