首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 2005 Integration Services (SSIS) 完整開發部署實戰

     編輯:關於SqlServer

前言:從 DTS 到 SSIS 的架構躍升

SQL Server 2005 將 DTS 重寫為 Integration Services (SSIS),引入資料流程/控制流程分離、設計/部署分離架構,並大幅擴充轉換元件,邁向企業級 ETL 平台。本文以最簡單的「資料表複製」專案,示範 SSIS 專案完整生命週期:開發 → 部署 → 排程 → 管理。

一、開發階段

1. 開發工具:Business Intelligence Development Studio (BIDS)

  • SQL Server 2005 客戶端工具高度整合:
  • SSMS → 資料庫管理與 T-SQL 開發
  • BIDS → SSIS/SSRS/SSAS 專案開發

2. 建立專案與資料流程

  1. BIDS → 新增專案 → Integration Services 專案,命名 SSISTEST
  2. 切換 Data Flow 索引標籤 → 建立新資料流程
  3. 從 Data Flow Sources 拖曳 OLE DB 來源 到設計面

3. 建立連線管理員

  1. Connection Managers 區域右鍵 → New OLE DB Connection
  2. 點擊 New 設定來源資料庫連線(伺服器、驗證、資料庫)
  3. 回到資料流程,雙擊 OLE DB 來源 → 選擇連線 → 資料存取模式:資料表或檢視 → 選取來源表

4. 加入目的地與連接

  1. 從 Data Flow Destinations 拖曳 OLE DB 目的地
  2. 將來源的綠色輸出箭頭拖曳至目的地(建立資料流路徑)
  3. 雙擊目的地 → 設定目標連線(若不同資料庫需另建連線管理員)
  4. 對應: 系統自動對應同名欄位,可手動調整

5. 控制流程設計

切換 Control Flow 索引標籤,本範例僅有一個資料流程任務,故控制流程自動包含該任務。複雜專案可加入:

  • 容器:Sequence、For Loop、Foreach Loop
  • 任務:Execute SQL、File System、Send Mail、Script Task 等
  • 優先順序限制條件(成功/失敗/完成)控制流程走向

二、部署階段

1. 產生部署公用程式

  1. 專案右鍵 → Properties → Deployment Utility
  2. CreateDeploymentUtility = True
  3. 重新 Build 專案

2. 部署檔案結構

輸出目錄(預設 bin\Deployment)包含:

  • SSISTEST.SSISDeploymentManifest(部署資訊清單)
  • *.dtsx 封裝檔案
  • *.dtsConfig 組態檔(若有設定)

3. 執行部署精靈

  1. 將 Deployment 目錄複製至目標伺服器
  2. 右鍵 SSISTEST.SSISDeploymentManifest → Deploy
  3. 精靈步驟:選擇部署至 SQL Server (msdb) 或 檔案系統 → 指定目標伺服器 → 完成

三、排程執行

SQL Server Agent 作業排程

  1. SSMS 連線 → SQL Server Agent → Jobs 右鍵 New Job
  2. Steps 頁籤 → New → Type: SQL Server Integration Services Package
  3. 指定套件來源(SQL Server / 檔案系統)、封裝路徑
  4. Schedules 頁籤設定執行頻率(每日、每週、自訂)
  5. 啟用作業

四、管理與監控

SSMS 管理 Integration Services

  1. SSMS 連線時,伺服器類型 選 Integration Services
  2. 物件總管顯示:Stored Packages → MSDB / File System
  3. 右鍵封裝可:執行、匯入、匯出、刪除、產生報表

執行狀態監控

  • SSMS → Integration Services → 匯入/匯出報表 查看執行歷史
  • sysssislog 資料表(若啟用記錄)儲存詳細事件
  • 效能計數器:SQLServer:SSIS Pipeline、SQLServer:SSIS Service

進階主題預告

  • 參數化與組態檔: 透過 .dtsConfig 實現多環境部署
  • 事件處理器: OnError、OnWarning、OnPostExecute 客製化邏輯
  • 資料流程效能調優: 緩衝區大小、平行執行、非同步元件
  • 專案部署模型 (SQL 2012+): SSISDB 目錄、環境變數、版本控制

結語

SSIS 雖比 DTS 複雜,但其架構分離帶來的可維護性、擴充性與企業級功能,使大型 ETL 專案反而更易管理。掌握「開發 → 部署 → 排程 → 管理」標準化流程,是 BI 開發者的核心技能。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved