第1章 歡迎使用SQL Server集成服務 1.
1.1 SQL Server 2005 SSIS中的新特性
1.1.1 導入和導出向導
1.1.2 商業(yè)智能開發(fā)工具集 2
1.2 體系結構 3
1.2.1 程序包
1.2.2 任務 5
1.2.3 數據源元素 6
1.2.4 數據源視圖 7
1.3 優(yōu)先約束 8
1.3.1 約束值 8
1.3.2 條件表達式 8
1.4 容器 9
1.5 變量 10
1.6 數據流元素 10
1.6.1 源 10
1.6.2 目的地 11
1.6.3 轉換 12
1.7 錯誤處理和日志記錄 13
1.8 SQL Server 2005的版本 14
1.9 小結 16
第2章 SSIS工具 17
2.1 Import and Export Wizard 17
使用Import and Export Wizard 17
2.2 Package Installation Wizard 21
2.3 Business Intelligence Development
Studio 21
2.4 創(chuàng)建自己的第一個程序包 23
2.5 Solution Explorer Window 24
2.5.1 Toolbox 25
2.5.2 Properties Windows 26
2.5.3 Navigation Pane 26
2.5.4 其他窗口 27
2.6 SSIS Package Designer 27
2.6.1 Controller Flow 28
2.6.2 Conne tion Manager 30
2.6.3 變量 31
2.6.4 數據流 32
2.6.5 Event Handler 33
2.6.6 Package Explorer 34
2.6.7 執(zhí)行程序包 34
2.7 小結 35
第3章 SSIS任務 36
3.1 共享屬性 36
3.2 Execute SQL 任務 37
3.3 Bulk Insert任務 38
3.4 使用Bulk Insert和Execute SQL任務 41
3.5 Data Flow任務 43
3.6 Execute Process任務 43
3.7 File System任務 44
3.8 FTP任務 45
3.9 使用File System和FTP任務 46
3.10 Execute Package任務 48
3.11 Script和ActiveX任務 49
3.12 Send Mail任務 51
3.13 Message Queue任務 52
3.14 Web Service任務 52
3.15 WMI Data Reader任務和Event Watcher任務 54
3.16 XML任務 56
3.17 SQL Server Analysis Services Execute DDL和Processing任務 57
3.18 Data Mining Query任務 58
3.19 Expression頁面 59
3.20 小結 60
第4章 容器和數據流 61
4.1 容器 61
4.1.1 Task Host容器 61
4.1.2 Sequence容器 61
4.1.3 For Loop容器 62
4.1.4 Foreach Loop 容器 65
4.2 源 67
4.2.1 OLE DB源 67
4.2.2 Excel源 68
4.2.3 Flat File源 68
4.2.4 Raw File源 69
4.2.5 XML源 69
4.2.6 Data Reader源 69
4.3 目的地 69
4.3.1 Data Mining Model Training目的地 70
4.3.2 DataReader目的地 71
4.3.3 Dimension Pro essing和Partition Processing目的地 72
4.3.4 Excel目的地 72
4.3.5 Flat File目的地 73
4.3.6 OLE DB目的地 73
4.3.7 Raw File目的地 74
4.3.8 Recordset目的地 74
4.3.9 SQL Server和SQL Server Mobile目的地 74
4.4 轉換 74
4.4.1 Aggregate轉換 75
4.4.2 Audit轉換 77
4.4.3 Character Map轉換 77
4.4.4 Conditional Split轉換 78
4.4.5 Copy Column轉換 80
4.4.6 Data Conversion轉換 80
4.4.7 Data Mining Query轉換 81
4.4.8 Derived Column轉換 81
4.4.9 Export Column轉換 81
4.4.10 Fuzzy Grouping和Fuzzy Lookup轉換 82
4.4.11 Import Column 83
4.4.12 Lookup轉換 83
4.4.13 Merge轉換 84
4.4.14 Merge Join轉換 85
4.4.15 Multicast轉換 86
4.4.16 OLE DB Command轉換 86
4.4.17 Per entage and Row Sampling轉換 86
4.4.18 Pivot和Unpivot轉換 87
4.4.19 Row Count轉換 87
4.4.20 Script Component轉換 88
4.4.21 Slowly Changing Dimension轉換 88
4.4.22 Sort轉換 88
4.4.23 Term Extraction和Lookup轉換 89
4.4.24 Union All轉換 89
4.5 Data Flow示例 90
4.6 Data Viewer 93
4.7 小結 94
第5章 創(chuàng)建端到端的程序包 95
5.1 基礎轉換教程 95
5.1.1 創(chuàng)建連接 95
5.1.2 創(chuàng)建任務 98
5.1.3 創(chuàng)建數據流 98
5.1.4 完成程序包 99
5.1.5 保存程序包 99
5.1.6 執(zhí)行程序包 99
5.2 具有數據清理功能的典型大型機ETL 100
5.2.1 創(chuàng)建數據流 103
5.2.2 處理不正確數據 103
5.2.3 最終完成 106
5.2.4 處理更錯誤的數據 107
5.3 使任務循環(huán)并動態(tài)執(zhí)行 110
5.3.1 循環(huán) 110
5.3.2 使程序包動態(tài)執(zhí)行 111
5.4 小結 113
第6章 高級任務和轉換 114
6.1 Execute SQL任務 114
6.1.1 變量 116
6.1.2 表達式 117
6.1.3 使用SQL 輸出參數來修改運行時設置 118
6.2 Import Column轉換 121
6.2.1 Import Column示例 121
6.2.2 使用文件迭代的ImportColumn示例 125
6.3 在SSIS程序包開發(fā)過程中使用Temp Tables任務 127
6.4 Export Column轉換 128
6.5 Row Count轉換 130
6.6 OLE DB Command轉換 131
6.7 Term Extra tion轉換 134
6.8 Term Lookup轉換 139
6.9 Fuzzy Lookup轉換 140
6.10 Fuzzy Grouping轉換 145
6.11 Pivot轉換 148
6.12 Unpivot轉換 152
6.13 Slowly Changing Dimention轉換 155
6.14 數據庫對象級的任務 164
6.14.1 Transfer Database任務 164
6.14.2 Transfer Login任務 165
6.14.3 Transfer Master Stored Procedures任務 166
6.14.4 Transfer SQL Server Objects任務 166
6.15 小結 168
第7章 在SSIS中進行腳本編程 169
7.1 腳本編程概述 169
7.2 表達式 170
7.2.1 動態(tài)屬性 170
7.2.2 任務中的表達式 172
7.3 Script任務 174
7.3.1 Dts對象 177
7.3.2 訪問變量 178
7.3.3 事件 179
7.3.4 日志記錄 181
7.3.5 Script任務調試 181
7.4 使用.NET程序集 183
7.5 結構化異常處理 184..
7.6 Script Component 186
7.6.1 使用Script Component 186
7.6.2 調試Script Component 191
7.7 小結 192
第8章 訪問異類數據 193
8.1 Excel 193
8.1.1 導出到Excel 194
8.1.2 從Excel導入 197
8.2 Acess 201
8.2.1 了解Acess安全性 202
8.2.2 配置Acess Connection Manager 203
8.2.3 從A ess導入 204
8.2.4 使用參數 206
8.3 Oracle 209
8.3.1 客戶端設置 209
8.3.2 導入Oracle數據 210
8.4 Web Service 211
8.4.1 Hyperlink Extractor服務 212
8.4.2 Currency Conversion服務 214
8.5 XML數據 219
8.6 小結 224
第9章 可靠性和可伸縮性 225
9.1 重啟動程序包 225
9.1.1 簡單控制流 226
9.1.2 容器中的容器和斷點 230
9.1.3 各種不同的情況 231
9.1.4 斷點文件探密 234
9.2 程序包事務 235
9.2.1 單個程序包,198單個事務 236
9.2.2 單個程序包,199多個事務 238
9.2.3 兩個程序包,200一個事務 240
9.2.4 使用SQL Server中本原事務的單個程序包 241
9.3 錯誤輸出 243
9.4 規(guī)模擴展 245
9.4.1 規(guī)模擴展內存壓力 245
9.4.2 通過暫存數據進行規(guī)模擴展 246
9.5 小結 250
第10章 了解集成服務引擎 251
10.1 集成服務引擎:一個類比 251
10.2 了解SSIS Data Flow和Control Flow 252
10.2.1 Data Flow和Control Flow對比 252
10.2.2 SSIS程序包從啟動到結束的執(zhí)行時間 254
10.3 使用Control Flow的企業(yè)工作流 254
10.4 使用Data Flow的企業(yè)數據處理 255
10.4.1 內存緩存體系結構 256
10.4.2 轉換類型 257
10.4.3 高級的Data Flow執(zhí)行概念 266
10.5 小結 274
第11章 應用集成服務引擎 275
11.1 過去的DTS 275
11.1.1 DTS解決方案體系結構 276
11.1.2 一般的DTS處理方法 277
11.1.3 DTS的局限性 278
11.2 現(xiàn)在的Integration Service 280
11.2.1 Integration Service設計實踐 280
11.2.2 優(yōu)化程序包處理 294
11.3 管線性能監(jiān)視 298
11.4 小結 301
第12章 DTS 2000移植和元數據管理 302
12.1 將DTS 2000程序包移植到SSIS 302
12.2 使用Package Migration Wizard 304
12.3 在SSIS下運行DTS 2000程序包 307
12.4 數據包元數據以及存儲管理 309
12.4.1 在SQL Server Management Studio中管理SSIS程序包 311
12.4.2 在SQL Server Management Studio中管理DTS 2000程
序包 313
12.5 小結 314
第13章 錯誤和事件處理 315
13.1 優(yōu)先約束 315
13.1.1 優(yōu)先約束和表達式 317
13.1.2 多個優(yōu)先約束 320
13.2 事件處理 321
13.2.1 事件 322
13.2.2 Inventory示例 323
13.2.3 事件冒泡 330
13.3 斷點 332
13.4 Checkpoint 335
13.5 日志記錄 336
13.6 小結 339
第14章 對SSIS進行編程和擴展 340
14.1 示例組件 340
14.1.1 組件1:源適配器 340
14.1.2 組件2:轉換 341
14.1.3 組件3:目的地適配器 341
14.2 管線組件方法 342
14.2.1 設計時方法 342
14.2.2 運行時方法 346
14.2.3 連接時方法 348
14.3 創(chuàng)建組件 348
14.3.1 準備 349
14.3.2 創(chuàng)建源適配器 355
14.3.3 創(chuàng)建轉換 366
14.3.4 創(chuàng)建目的地適配器 378
14.4 調試組件 386
14.4.1 設計時調試 387
14.4.2 運行時調試 388
14.5 小結 391
第15章 在組件中添加用戶界面 392
15.1 三個關鍵步驟 392
15.2 創(chuàng)建用戶界面 393
15.2.1 添加項目 393
15.2.2 實現(xiàn)IDtsComponentUI 396
15.2.3 設置UITypeName 399
15.2.4 創(chuàng)建窗體 401
15.3 進一步的開發(fā) 406
15.3.1 運行時連接 406
15.3.2 組件屬性 409
15.3.3 處理錯誤和警告 410
15.3.4 列屬性 413
15.4 小結 414
第16章 外部管理和WMI任務實現(xiàn) 415
16.1 使用托管代碼的外部管理 415
16.2 Appli ation對象維護操作 416
16.2.1 程序包維護操作 416
16.2.2 服務器文件夾維護 417
16.2.3 程序包角色維護 418
16.2.4 程序包監(jiān)視 419
16.2.5 程序包管理示例 420
16.3 程序包日志提供程序 429
16.3.1 指定要記錄的事件 430
16.3.2 對日志提供程序進行編程 431
16.4 程序包配置 433
16.4.1 創(chuàng)建配置 434
16.4.2 對Configuration對象進行編程 435
16.4.3 Configuration對象 436
16.5 WMI任務 436
16.5.1 WMI Data Reader任務解釋 437
16.5.2 WMI Event Wat her任務 438
16.5.3 WMI Data Reader任務示例 439
16.5.4 WMI Event Wat her任務示例 444
16.6 小結 445
第17章 通過外部應用程序使用SSIS 446
17.1 從RSS輸入,302從Reporting Services報表輸出 446
17.2 InfoPath 文檔 452
17.3 ASP.NET應用程序 459
17.4 小結 463
第18章 SSIS軟件開發(fā)生命周期 465
18.1 軟件開發(fā)生命周期介紹 466
18.1.1 軟件開發(fā)生命周期歷史簡介 466
18.1.2 軟件開發(fā)生命周期的類型 466
18.2 版本和源代碼管理 468
18.2.1 Microsoft VisualSourceSafe 468
18.2.2 Team Foundation Server. Team System和SSIS 480
18.2.3 MSF Agile和SSIS 484
18.2.4 Project Portal 486
18.2.5 綜合應用 487
18.3 代碼部署和從開發(fā)到測試,316再到投入生產的升級過程 498
18.3.1 Deployment向導 499
18.3.2 導入程序包 500
18.4 小結 501
第19章 案例研究:一個編程示例 502
19.1 背景 502
19.2 業(yè)務問題 503
19.3 解決方案概述 503
19.4 解決方案體系結構 504
19.5 數據體系結構 507
19.5.1 文件保存位置設置 508
19.5.2 銀行ACH付費 508
19.5.3 Lockbox文件 509
19.5.4 PayPal或直接存款到企業(yè)賬戶 510
19.5.5 案例研究數據庫模型 510
19.5.6 數據庫創(chuàng)建 511
19.6 CaseStudy_Load程序包 520
19.6.1 命名約定和提示 520
19.6.2 程序包創(chuàng)建和File System任務 521
19.6.3 Lockbox Control Flow處理 525
19.6.4 Lockbox文件驗證 531
19.6.5 Lockbox處理 538
19.6.6 ACH Control Flow處理 542
19.6.7 ACH 文件驗證 545
19.6.8 ACH處理 550
19.6.9 電子郵件付款處理 552
19.6.10 電子郵件Data Flow處理 554
19.6.11 測試 557
19.7 CaseStudy_Pro ess程序包 557
19.7.1 程序包創(chuàng)建 558
19.7.2 高可信度Data Flow 560
19.7.3 中等可信度Data Flow 564
19.7.4 解釋結果 567
19.8 在SQL Agent中運行 569
19.9 小結 570...