程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server集成服務編程基礎

SQL Server集成服務編程基礎

編輯:關於SqlServer

如果你曾經將數據從SQL Server中移入或者移出,那麼你現在就可以使用微軟的DTS或者微軟的數據傳輸服務工具來完成了。DTS是一個ETL(是抽取、傳輸和載入的縮寫)的工具,它可以讓數據庫管理員們創建一系列步驟來描述數據是如何被傳輸的。這些“包”,正如它們的名字,是可以通過一些不同的程序語言或者直接在SQL 服務器自身運行的。

這個想法一直以來都是一個不錯的想法,但是無論如何還是有局限的——如果使用早期版本的SQL Server的塊拷貝系統的版本很方便的話,它還是能夠繼續榮耀下去的。在SQL Server2005上,微軟決定將DTS變成一種全新的ETL工具——SQL Server綜合服務(SSIS)。將數據從一個數據庫移動到另外一個數據庫上或者是以另外一種格式導出數據庫,是你可以使用的SSIS的最基本的用途。這裡是一些使用SSIS的一些其他原因:

數據清潔

如果你有一個數據集是不“干淨”的,例如它沒有被標准化,SSIS有一系列的工具集可以用來清潔和標准化數據。其中包括類似“模糊”匹配和分組的函數,那麼那些看起來是一樣的數據(只是經過了不同的導入和導出)就可以被過濾掉並標准化。有關這一點的一個很好的例子就是來自不同地理區域的擁有不同種類的數據:同樣的想法也可以通過不同的方式來表達,它們在被處理之前需要被標准化。

連接到分析服務立方體上

你可以使用SSIS將數據直接通過管道連接到立方體上,以便於數據挖掘。除了將這些數據導入本地數據庫,然後在那裡進行挖掘之外,SSIS包自身也可以用於數據源。

與SQL Server報告服務整合

對於分析立方體,SSIS包還可以直接用於數據源來創建報告。

完全的.NET報告

這或許是假設的,但是SSIS編程的確可以在本地或者通過COM對象接口在任何一種.NET語言中完成——或者,實際上,任何支持COM對象的語言。

最終的結果就是你導入數據集的系統,以及你創建的包可以更加像是經過變成的對象,而不是靜態的數據那樣工作。正是這種想法,它允許用戶預先以報告服務的方式進行編程,分析家說。

服務,數據和數據庫自身,都會彼此之間對話。例如,歸檔的遺留數據可以繼續為形式分析師或者數據挖掘使用,即使它們在技術上說已經是下線了。另外一個例子就是數據從多個靜態集合中活動的集成,例如我前面的提到的那種情況,來自多個地理位置的數據。

因為SSIS是可編程的,它的功能就可以在很大范圍內被環境所調用。例如,一個ASP.NET驅動的網站可以是運行SSIS包的管理前端,或者可以是一個獨立的連接到SSIS的應用程序,出於自己的使用而獲取並提煉數據。能夠程序地驅動SQL Server的想法已經出現很長一段時間了,但是是SSIS使得能夠與所有事物對話成為可能,包括SQL Server也使用的東西——一次,並且是以統一的方式。一個程序員也可以創建定制的SSIS擴展,例如客戶數據傳輸或者計數器。你可以在另外一個應用程序或者其他的整個環境中再次利用它們。

SSIS中的包可以用商務智能設計套件(Business Intelligence Design Studio)來編寫,這個工具是隨SQL Server2005發售的。結果文件大多數都是XML格式,所以如果需要的話,它們可以被察看或者手工地修改。注意,SSIS中的一些功能——數據挖掘連接和模糊分組及查找,這兩項——都只有在企業版的SQL Server2005中才可以找到。SSIS不是在所有的SQL Server 2005 Express Edition中都可以獲得,所以如果你創建了SSIS包,那麼你就只能在SQL Server的完全版本中使用它們。最後,當你使用SSIS創建程序性的解決方案的時候,它們需要的確是設計用來在完全支持SSIS的其他環境中工作。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved