SQL Server 2005 SSIS 資料
轉換工具介紹 ( 原 DTS)
精誠公司恆逸資訊 胡百敬
大綱
 概覽
 Business Intelligence Development Studio
與設計 SSIS 封裝
 封裝的安裝與執行
SQL Server Integration Services
是什麼?
 全新的 SQL Server 商業智慧
應用程式
 Data Transformation Services
的接續版本
 高效能的資料整合平台
 全新用 .NET 撰寫的架構,更
豐富的功能
 完善的資料檢視、單步除錯與
錯誤處理
 透過 pipeline 可以更豐富地加
值資料,且全部在記憶體內完
成,不需要中介資料表
 以 Package 為執行單位,而
非 Project
SSIS 與 DTS 的差異概觀
 將資料流程與工作流程分開
 以更豐富,更細緻功能的 Dataflow 工作取代資
料轉換工作
 以容器工作提供迴圈或執行順序
 以變數取代動態屬性工作
 改以 XML 的格式存放在 SQL Server 或檔案系
統上,更方便做 Source Control
 可以透過 DTS Migration Wizard 將舊的封裝轉
換到新的 SSIS
SSIS 架構
提供新的資料倉儲處理架構
(1/2)
在以往的運作模式下,資料整合的流程大多只做簡單的轉換與載入的工作
在資料庫伺服器內執行彙總、排序等其他工作…
… 在做上述的整理資料動作的同時會與一般使用者查詢搶資源,互相耗損系統效
能
這種解決方案無法完成大規模、多重且複雜的彙總
傳統的資料倉儲載入資料方式
提供新的資料倉儲處理架構
(2/2)
現在,透過 SQL Server Integration Services 可以同時完成整合、彙總、排序…等
諸多資料處理動作,然後在載入到資料庫
讓資料庫伺服器可以專注在回答使用者的查詢
透過 64- 位元版本的引擎,可以讓此方案處理大規模資料量且複雜的彙總運算
透過 SQL Server Integration Services 載入資料到資料倉儲
大綱
 概覽
 Business Intelligence Development
Studio 與設計 SSIS 封裝
 封裝的安裝與執行
Business Intelligence Development
Studio
 Package 編輯環境
 屬性視窗 (Properties)
 Toolbox
 Pop-up editor windows
 設計環境
 Work Flow, Data Flow, Event Handlers
 Package Browser
 變數,資料連線設定
 Output, Watch
SSIS 管線 (Plumbing)…
控制流程 (Control Flow)
LoopLoop
FTP Task
Send Mail
Execute SQL
Data Flow Task
資料流程 (Data Flow)
Flat File Source SQL Data Source
Merge
Multi-cast
Derive Column
SQL Server Flat File
工作流程
 流程導向
 前置條件 ( 成功,失敗,或完成 )
 前置條件可以做 AND 和 OR 等布林運算
 從環境輸入參數
 File System Task 、 Execute SQL
Task 、 Send Mail Task 、 Data Flow Task…
DemoDemo 工作流程DemoDemo 工作流程
資料流程
 特殊的工作流程: Data Flow Task
 資料處理導向,管線流程的概念 (pipeline)
處理資料
 建立或使用資料紀錄
 可以觀察資料變化的過程
 Source
Adapter 、 Transform 、 Destination
Adapter
DemoDemo 資料流程DemoDemo 資料流程
事件處理流程
 經由事件觸發的特殊流程 ( 例如:
OnError 、 OnPostExecute)
 可以簡單地寄發一封 e-mail 或是複雜地執
行另外一段 dataflow task 以處理錯誤的資
料紀錄
 自訂的 components 從基礎類別自動繼承
相關的事件 (OnError, OnWarning…)
 Component 的建立者可以自訂他的事件 ( 例如
: OnFTPFileFinishedCopy)
DemoDemo 事件處理流程DemoDemo 事件處理流程
大綱
 概覽
 Business Intelligence Development Studio
與設計 SSIS 封裝
 封裝的安裝與執行
SSIS 生命週期相關的工具
 設計 SSIS Package
 Business Intelligence Studio (Visual
Studio)
 為 SQL Server 2005 之前版本
packages 提供的 Migration wizard
 整合版本控管 (VSS)
 佈署 / 執行
 複製 packages 的佈署工具 (dtutil.exe)
 命令列與使用者介面的執行工具
(dtexec.exe 和 dtexecui.exe)
 彈性的設定選項
 支援工具
 豐富的 per-package Logging
 透過 SQL Management Studio 監控正
在執行的 packages 並組織管理
packages
 Checkpoint - Restartability
SSIS 相關工具
SSIS
packagespackages
BI Studio
SSIS Service
Mgt Studio
Import Export Wizard
Deployment
Installer File set
Dtexec.exe
Dtexecui.exe
Dtutil.exe
執行 檢視當下的執行狀況與
importexport
佈署
彈性的設定
 設定 Package 內的屬性變更,修改
Package 的執行方式,但不需要重新設計
編輯 Package ( 例如:載入資料的檔名 )
 相關的設定可以存放在 SQL Server 內的
資料表、 XML 檔案、註冊機碼 (Registry
key) 、作業系統環境變數、 Parent
package
 每個 Package 都可以設定一個以上的
configuration sets ,且可以存放在不同的
來源
DemoDemo Package 屬性設定DemoDemo Package 屬性設定
SSIS Security 概觀
 Package 可以透過 Package Protection level property 屬性設定加解密
 (A) 若存放在 MSDB ,再透過 SQL Database roles 限制可以存取者的角色
 (B) 透過作業系統設定對於目錄和 package 檔案設定存取權限
•對存放 Package
的 MSDB 具有
Reader 和 Writer
roles
作業系統
權限
SQL DB
角色
•對於存放 Package
的檔案和目錄有存
取權限
Package
Protection Level
屬性
A B
對具機密性的資料
加密還是一般文字
存放
DemoDemo 設定 Package 加解密DemoDemo 設定 Package 加解密
SQL Management Studio
 存取 SSIS service
 監控正在執行的 packages
 管理存放 package 的架構
 Ad hoc 執行 package
DemoDemo 以 SQL Management Studio 管理 SSISDemoDemo 以 SQL Management Studio 管理 SSIS
Package
從前一次執行的錯誤點重新啟
動
Loop
Task
Task
Loop
Task
Task
Task
Task
Data Flow
Transform
Transform
Task
Task
Data Flow
Transform
Transform
 從發生錯誤的點重新啟動
執行 Package
 相關設定
 CheckpointFileName :路
徑  檔名
 CheckpointUsage : If
Exists 或 Always
 SaveCheckpoints : True
 FailPackageOnFailure :
True ( 各 Task 階層 )
 在執行 Package 可以調整
CheckpointUsage 屬性,
設定當下的執行是否要參
照先前留下的
DemoDemo 重新執行 Package 屬性設定DemoDemo 重新執行 Package 屬性設定
可重新啟動的邊界
結論
 大幅提升效率 !!!
 相較 DTS 效率提升 600%
 雖然資料轉換的邏輯複雜,資料量龐大,依然可以有很好的效能,尤其在
多顆 CPU 的機器上可以有效執行多執行緒的工作
 豐富的功能
 更多預建的資料存取介面、轉換功能以及輔助工作,可以大幅減少所需撰
寫的程式
 可延升的物件模型,提供客製化的能力
 大幅提升生產力的設計環境,整合的除錯與部署
 與 BI 平台 (IS-AS-RS) 整合在一起
參考資源
 www.SQLIS.com
 www.SQLDTS.com
 www.microsoftelearning.com
Sql Server2005 Ssi Stranslation

Sql Server2005 Ssi Stranslation

  • 1.
    SQL Server 2005SSIS 資料 轉換工具介紹 ( 原 DTS) 精誠公司恆逸資訊 胡百敬
  • 2.
    大綱  概覽  BusinessIntelligence Development Studio 與設計 SSIS 封裝  封裝的安裝與執行
  • 3.
    SQL Server IntegrationServices 是什麼?  全新的 SQL Server 商業智慧 應用程式  Data Transformation Services 的接續版本  高效能的資料整合平台  全新用 .NET 撰寫的架構,更 豐富的功能  完善的資料檢視、單步除錯與 錯誤處理  透過 pipeline 可以更豐富地加 值資料,且全部在記憶體內完 成,不需要中介資料表  以 Package 為執行單位,而 非 Project
  • 4.
    SSIS 與 DTS的差異概觀  將資料流程與工作流程分開  以更豐富,更細緻功能的 Dataflow 工作取代資 料轉換工作  以容器工作提供迴圈或執行順序  以變數取代動態屬性工作  改以 XML 的格式存放在 SQL Server 或檔案系 統上,更方便做 Source Control  可以透過 DTS Migration Wizard 將舊的封裝轉 換到新的 SSIS
  • 5.
  • 6.
  • 7.
    提供新的資料倉儲處理架構 (2/2) 現在,透過 SQL ServerIntegration Services 可以同時完成整合、彙總、排序…等 諸多資料處理動作,然後在載入到資料庫 讓資料庫伺服器可以專注在回答使用者的查詢 透過 64- 位元版本的引擎,可以讓此方案處理大規模資料量且複雜的彙總運算 透過 SQL Server Integration Services 載入資料到資料倉儲
  • 8.
    大綱  概覽  BusinessIntelligence Development Studio 與設計 SSIS 封裝  封裝的安裝與執行
  • 9.
    Business Intelligence Development Studio Package 編輯環境  屬性視窗 (Properties)  Toolbox  Pop-up editor windows  設計環境  Work Flow, Data Flow, Event Handlers  Package Browser  變數,資料連線設定  Output, Watch
  • 10.
    SSIS 管線 (Plumbing)… 控制流程(Control Flow) LoopLoop FTP Task Send Mail Execute SQL Data Flow Task 資料流程 (Data Flow) Flat File Source SQL Data Source Merge Multi-cast Derive Column SQL Server Flat File
  • 11.
    工作流程  流程導向  前置條件( 成功,失敗,或完成 )  前置條件可以做 AND 和 OR 等布林運算  從環境輸入參數  File System Task 、 Execute SQL Task 、 Send Mail Task 、 Data Flow Task… DemoDemo 工作流程DemoDemo 工作流程
  • 12.
    資料流程  特殊的工作流程: DataFlow Task  資料處理導向,管線流程的概念 (pipeline) 處理資料  建立或使用資料紀錄  可以觀察資料變化的過程  Source Adapter 、 Transform 、 Destination Adapter DemoDemo 資料流程DemoDemo 資料流程
  • 13.
    事件處理流程  經由事件觸發的特殊流程 (例如: OnError 、 OnPostExecute)  可以簡單地寄發一封 e-mail 或是複雜地執 行另外一段 dataflow task 以處理錯誤的資 料紀錄  自訂的 components 從基礎類別自動繼承 相關的事件 (OnError, OnWarning…)  Component 的建立者可以自訂他的事件 ( 例如 : OnFTPFileFinishedCopy) DemoDemo 事件處理流程DemoDemo 事件處理流程
  • 14.
    大綱  概覽  BusinessIntelligence Development Studio 與設計 SSIS 封裝  封裝的安裝與執行
  • 15.
    SSIS 生命週期相關的工具  設計SSIS Package  Business Intelligence Studio (Visual Studio)  為 SQL Server 2005 之前版本 packages 提供的 Migration wizard  整合版本控管 (VSS)  佈署 / 執行  複製 packages 的佈署工具 (dtutil.exe)  命令列與使用者介面的執行工具 (dtexec.exe 和 dtexecui.exe)  彈性的設定選項  支援工具  豐富的 per-package Logging  透過 SQL Management Studio 監控正 在執行的 packages 並組織管理 packages  Checkpoint - Restartability
  • 16.
    SSIS 相關工具 SSIS packagespackages BI Studio SSISService Mgt Studio Import Export Wizard Deployment Installer File set Dtexec.exe Dtexecui.exe Dtutil.exe 執行 檢視當下的執行狀況與 importexport 佈署
  • 17.
    彈性的設定  設定 Package內的屬性變更,修改 Package 的執行方式,但不需要重新設計 編輯 Package ( 例如:載入資料的檔名 )  相關的設定可以存放在 SQL Server 內的 資料表、 XML 檔案、註冊機碼 (Registry key) 、作業系統環境變數、 Parent package  每個 Package 都可以設定一個以上的 configuration sets ,且可以存放在不同的 來源 DemoDemo Package 屬性設定DemoDemo Package 屬性設定
  • 18.
    SSIS Security 概觀 Package 可以透過 Package Protection level property 屬性設定加解密  (A) 若存放在 MSDB ,再透過 SQL Database roles 限制可以存取者的角色  (B) 透過作業系統設定對於目錄和 package 檔案設定存取權限 •對存放 Package 的 MSDB 具有 Reader 和 Writer roles 作業系統 權限 SQL DB 角色 •對於存放 Package 的檔案和目錄有存 取權限 Package Protection Level 屬性 A B 對具機密性的資料 加密還是一般文字 存放 DemoDemo 設定 Package 加解密DemoDemo 設定 Package 加解密
  • 19.
    SQL Management Studio 存取 SSIS service  監控正在執行的 packages  管理存放 package 的架構  Ad hoc 執行 package DemoDemo 以 SQL Management Studio 管理 SSISDemoDemo 以 SQL Management Studio 管理 SSIS
  • 20.
    Package 從前一次執行的錯誤點重新啟 動 Loop Task Task Loop Task Task Task Task Data Flow Transform Transform Task Task Data Flow Transform Transform 從發生錯誤的點重新啟動 執行 Package  相關設定  CheckpointFileName :路 徑 檔名  CheckpointUsage : If Exists 或 Always  SaveCheckpoints : True  FailPackageOnFailure : True ( 各 Task 階層 )  在執行 Package 可以調整 CheckpointUsage 屬性, 設定當下的執行是否要參 照先前留下的 DemoDemo 重新執行 Package 屬性設定DemoDemo 重新執行 Package 屬性設定 可重新啟動的邊界
  • 21.
    結論  大幅提升效率 !!! 相較 DTS 效率提升 600%  雖然資料轉換的邏輯複雜,資料量龐大,依然可以有很好的效能,尤其在 多顆 CPU 的機器上可以有效執行多執行緒的工作  豐富的功能  更多預建的資料存取介面、轉換功能以及輔助工作,可以大幅減少所需撰 寫的程式  可延升的物件模型,提供客製化的能力  大幅提升生產力的設計環境,整合的除錯與部署  與 BI 平台 (IS-AS-RS) 整合在一起
  • 22.

Editor's Notes

  • #3 DBA 被要求管理更多的資料、提供更多的功能,更穩定的系統,能夠參予開發 team 的需求討論。
  • #9 DBA 被要求管理更多的資料、提供更多的功能,更穩定的系統,能夠參予開發 team 的需求討論。
  • #15 DBA 被要求管理更多的資料、提供更多的功能,更穩定的系統,能夠參予開發 team 的需求討論。
  • #16 可以透過 Management Studio 提供的 SSIS Service 來 Import/Export 到 SSIS Service 與 SQL Server