使用SSIS作為集成開發(fā)平臺
SSIS 超越 ETL 工具之處不僅在于它可以使用非傳統(tǒng)的應用場景,而且在于它是一個可以進行數據集成的真正平臺。SSIS 是 SQL Server Business Intelligence(BI)平臺(開發(fā)端到端的雙向應用)的一部分。
集成的開發(fā)平臺
SQL Server Integration Services、Analysis Services 和 Reporting Services 都使用一個共同的基于 Microsoft Visual Studio ® 的開發(fā)環(huán)境,即 SQL Server Business Intelligence (BI) Development Studio。BI Development Studio 為 BI 應用程序的開發(fā)提供了一個集成的開發(fā)環(huán)境(IDE)。這個共享的基礎結構支持在各種開發(fā)項目(集成、分析和報告)之間進行元數據級的集成。這種共享構造的一個示例是數據源視圖(DSV),DSV 是數據源的脫機架構/視圖定義,可應用于所有這三種項目類型。
IDE 提供與版本控制軟件(如 VSS)等進行集成的設施,也支持基于團隊的功能(如“簽入/簽出”),因此,它能夠滿足商業(yè)智能應用程序對企業(yè)級的、面向團隊的、開發(fā)環(huán)境的需求。圖 9 顯示了一個包含集成、分析和報告項目的 BI Development Studio 解決方案。
這不僅提供了一個開發(fā) BI 應用程序的單一位置,還可用于開發(fā)其他 Visual Studio 項目(使用Visual C#®、Visual Basic® .NET 等),從而為開發(fā)人員提供了一種真正的端到端的開發(fā)體驗。
除了提供一種集成的 BI 開發(fā)環(huán)境以外,BI Development Studio 還具有對 SSIS 包進行準確的運行時調試的功能,包括設置斷點的能力及對標準開發(fā)構造(如觀察變量)的支持。一個真正獨特的功能是數據查看器,當 Integration Services 處理數據流管道中的數據時,可以使用數據查看器查看多行數據。這種數據的可視化可以以常規(guī)文本網格的形式表示,也可以以圖形(如散點圖或條形圖)表示。實際上,可以連接多個查看器,以便同時以多種格式顯示數據。圖 10 顯示了使用散點圖和文本網格表示可視化地理數據的一個示例。
可編程性
除了提供專業(yè)的開發(fā)環(huán)境以外,SSIS 還通過一套 API 展示了其所有功能。這些 API 既有托管的(.NET Framework),也有本機的(Win32),允許開發(fā)人員通過以任何 .NET Framework 支持的語言(如 Visual C#、Visual Basic .NET 等)和 Visual C++ 支持的語言開發(fā)自定義組件來擴展 SSIS 的功能。這些自定義組件可以是工作流任務和數據流轉換(包括源適配器和目標適配器)。這樣,在 SSIS 集成進程中就能輕松地包含早期的數據和功能,從而能夠使過去投資的傳統(tǒng)技術仍然發(fā)揮作用。SSIS也能容易地包含第三方組件。
腳本
本文前面提到的可擴展性并非只能從可以再度使用的自定義組件獲得,還可以獲得基于腳本的可擴展性。SSIS 既有針對任務流的腳本組件,也有針對數據流的腳本組件。它們都允許用戶用 Visual Basic. NET 語言編寫腳本以添加即席功能(包括數據源和目標)以及重新使用封裝為 .NET Framework 程序集的任何現(xiàn)有功能。
SQL Server 2008 包含用于應用程序的 Visual Studio 工具,該工具提供一種腳本環(huán)境,可以使用Visual Basic .NET 或 C# 執(zhí)行腳本組件。
具有可擴展性的模型使 SSIS 不僅是一個數據集成工具,還是一個集成總線,可以容易地集成像數據挖掘、文本挖掘和統(tǒng)一維度模型(UDM)這樣的技術,以實現(xiàn)包含非常任意的數據操縱和結構的復雜集成應用場景。
使數據集成更容易完成
SSIS 體系結構的靈活性和可擴展性,使它可以解決在本文前面提及的數據集成所面臨的大部分技術挑戰(zhàn)。如圖 12 所示,SSIS 消除了不必要的分段處理(或者至少使之最小化)。因為是在單一管道操作中執(zhí)行復雜的數據操縱,現(xiàn)在它能對數據的變化和模式迅速作出反應,而且使用一種對關閉循環(huán)和執(zhí)行操作適用的時間框架。相比之下,就關閉循環(huán)和對數據執(zhí)行適當的操作而言,依賴于數據分段處理的傳統(tǒng)體系結構就顯得不切實際。
SSIS 的可擴展特性使組織能夠通過將自定代碼作為可以再度使用的擴展封裝到 SSIS 中,并在此基礎上充分利用日志記錄、調試和 BI 集成等功能,從而將他們在自定義代碼方面的現(xiàn)有投資用于數據集成。這非常有助于克服本文前面提及的某些組織挑戰(zhàn)。
與其他高端數據集成工具相比,SQL Server 產品中包含的 SSIS 的購置成本顯得非常合理。不僅初次購置成本下降,而且通過與 Visual Studio 和其他 SQL Server BI 工具的緊密集成,SSIS的應用程序開發(fā)和維護的成本相對其他類似的工具而言也顯著下降。SSIS(以及 SQL Server 的其他組件)極為合理的總體擁有成本(TCO),使企業(yè)級的數據集成能夠適用于所有的細分市場,而不再是專用于最大(和最富有的)的公司。同時,SSIS 的體系結構適合利用新式的硬件,其提供的性能和規(guī)模能夠滿足最高端客戶的需求。SSIS 能夠使所有客戶(從最高端的企業(yè)到小型和中型企業(yè))實現(xiàn)豐富的、可擴展的數據集成。由于與 SQL Server 中的其他功能和Microsoft 的客戶支持基礎結構(從廣泛的、長期的 beta 測試到豐富的聯(lián)機社區(qū),再到主要支持合同)的結合使用,以及與其他 Microsoft 產品的集成,使 SSIS 真正成為一個獨特的工具包,它為數據集成開辟了新的領域。
結束語
在當今的商業(yè)世界中,許多企業(yè)都依賴于數據集成技術來提供有意義的、可靠的信息以維持其競爭優(yōu)勢。SQL Server 2008 Integration Services (SSIS)能夠幫助信息技術部門滿足企業(yè)進行數據集成的需要。SQL Server 2008 Integration Services 能夠清理、轉換,以及將海量的多種數據源映射成為有用的格式。新增功能在改善其擴展能力和提高性能的同時,加快了開發(fā)速度并降低了 TCO。
【編輯推薦】