1.導言
這篇文章關注於使用SQL Server集成服務來從異構數據源提取數據以及將數據導入到Microsoft® SQL Server™用於商業智能(BI)分析和報表的好處。Oracle Database 10g數據作為主要數據源來使用。
這篇文章的讀者包括IT專家、數據庫管理員和系統架構師。讀者應該具有對數據庫和Microsoft SQL Server以及Oracle Database 10g的一般性了解。讀者應該在他們喜歡的硬件平台上使用參考的數據庫。
SQL Server是Microsoft集成商業智能平台的一部分,並覆蓋了數據倉庫、分析和報表、記分卡、計劃和預算。SQL Server在甘特的商業智能平台的魔力象限和數據倉庫的魔力象限中都是處於領導者象限。Microsoft在SQL Server標准版和企業版中都具有優秀的商業智能產品。這些包括SQL Server集成服務(SSIS)、SQL Server報表服務(SSRS)、以及SQL Server分析服務(SSAS)。與之對應的,Oracle提供了類似的功能作為Oracle企業版的可選項,但是需要額外收費。
這篇文章首要關注的是SQL Server 集成服務。SSIS提供了對異構和同構環境的支持,並作為一個集成工具服務於使用多個數據源和運行在Microsoft和非Microsoft軟件環境中平台的客戶。我們介紹了建立具有一個異構數據源的SSIS和導入數據到SQL Server是多麼簡單。我們還記錄了從一個Oracle Database 10g數據源導入數據到SQL Server的步驟。
許多IT經理努力采用實用的、性價比高的解決方案來支持他們的業務過程。我們再次強調SQL Server 所帶給商業智能解決方案的價值。SQL Server 包括優秀的商業智能工具而沒有額外收費,這是IT經理所不能忽視的。
2.關於SSIS
SQL Server集成服務(SSIS)是建立在Microsoft SQL Server之上的首要數據轉換框架。它執行許多任務,從簡單的導入/導出操作到在異構數據源間復雜的高性的提取、轉換、加載(ETL)任務。 這個強大的功能來自於一組緊密結合的工具套件,它包括控制流和數據流邏輯設計器、用來建立和執行獨立的包的工具,以及支持這個執行和自動化高性能數據轉換所必需的服務。
SSIS來源於SQL Server 的之前版本,是作為數據轉換服務(DTS)——一個建立在SQL Server之中的簡單數據轉換框架。
SSIS作為數據轉換服務(DTS)——一個內置於SQL Server之中的簡單轉換框架,出現於SQL Server的先前版本。DTS所缺少的是廣泛的功能,它只是以一個簡單的“希望完成它”的思想來發布的。這使得開發人員和數據庫管理員可以在Microsoft SQL Server和其它數據庫平台或數據源間直接提取、轉換和加載數據。但是,如同數據庫操作的需求改變了一樣,對SQL Server中一個更加復雜的ETL解決方案的需求也改變了。
SSIS是許多年來客戶反饋和Microsoft修改的最終結果。在SQL Server中數據轉換的基本前提沒有改變,但是完成ETL任務的工具和處理從根本上改變了。SSIS具有比它之前版本更加廣泛的功能。這篇文檔提供了一個使用SSIS從外部數據源提取和轉換數據到一個SQL Server數據庫的實際例子。這個例子中的數據源來自於一個Oracle Database 10g數據庫。隨著Oracle and SQL Server之間所有者的總成本的增加,這個例子可能變得更通用。IT決策制訂者在決定使用哪個數據庫平台來運行他們的業務時將成本看作是一個重要的購買依據,而且SQL Server具有建立商業智能解決方案所必需的程序。
開始
在我們開始我們的ETL過程示例之前,我們必須先定義源Oracle數據庫和目標SQL Server數據庫之間的聯系路徑。這要求安裝所必需的Oracle支持軟件。Oracle要求網絡傳輸工具比如Oracle Net來與其它的數據庫服務聯系。Oracle Net與SQL Server Tabular Data Stream(TDS)很類似。Oracle Database 10g客戶端軟件最新的32位和64位版本可以從這裡下載:
http://download.oracle.com/otn/nt/oracle10g/10201/10201_client_win32.zip
http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_client.zip
要注意安裝客戶端軟件的特定版本——32位或64位。為你的操作系統(32位或64位)安裝正確的版本。