SQL
Server 集成服务(
SQL
Server Integration Services,
SSIS)是
SQL
Server
2005强大功能之一。从技术上来讲,它被归类为一种商业智能功能,同时是一种在工作流中加载数据以及执行任务的强大方式,该功能主要用于数据加载,但用户也可以使用它来完成工作流中的其他任务,例如执行程序或脚本,或者是扩展该功能。本章将主要说明
SSIS的体系结构并介绍任务的基本知识。
1.1 SQL Server 2005 SSIS中的新特性
在开发
SQL
Server 7.0的过程中,Microsoft曾成立了一个开发人员小组来开发
SQL
Server中的一个低调面世的功能,称为数据转换服务(Data Transformation Services,DTS)。DTS是导入/导出向导(Import/Export Wizard)的骨干,而且DTS的主要用途是将来自任何OLE DB兼容数据源的数据转换到另一个目的地。它也能够执行程序并运行脚本,调整工作流的细微特性。
在发布
SQL
Server 2000时,DTS拥有一批数量众多的数据库管理员和程序员追随者。Microsoft在发布该版本时加入了诸如动态属性(Dynamic Properties)任务等新功能来帮助用户在运行时动态修改程序包。它还扩展了日志记录并将转换过程分为多个阶段,称为多阶段数据泵(multiphase data pump)。不过,可用性研究表明:在此时期程序员仍然必须精心创建脚本来扩展DTS以完成他们所希望的任务。例如,如果希望DTS能够根据某个文件的存在与否来有条件地加载数据,则必须使用ActiveX Script任务和VBScript来动态完成该工作。这里的问题在于大多数数据库管理员缺乏这种脚本编程经验。
经过了5年之后,Microsoft大张旗鼓地发布了
SQL
Server
2005,其中DTS不再是一个低调的功能,而是成为了主要的商业智能(business intelligence,BI)基础之一。它被抬高到如此重要的地位以至于具有了自己的服务。而且DTS还被重新命名为
SQL
Server集成服务(
SSIS)。由于在
SSIS中加入了DTS以前没有的众多新内容,因此该产品被重新命名也就不足为奇了。Microsoft在可用性方面投入了大量的心血,使得用户不再需要进行脚本编程。
本书的大部分内容假定你对
SQL
Server DTS以前发布的版本内容一无所知,并且从全新的眼光来介绍
SQL
Server
2005
SSIS。毕竟,在你接触新功能时,会意识到对旧版本内容的缺乏了解实际上有助于学习新的内容。本书的学习曲线可以认为一开始是陡峭的,但是一旦牢固掌握了
SSIS的基础知识,则将可以在数分钟之内轻而易举地在
SQL
Server
2005中创建那些在
SQL
Server 2000中曾被认为是比较复杂的程序包。
用户可以通过查看
SQL
Server
2005中的工具箱来区分新的
SSIS版本,该工具箱对于
SSIS程序员唾手可得,工具的名称以及使用方式可以动态改变,不过这些工具都以与
SQL
Server 2000完全不同的形式存在。本章将简单介绍每种工具,在随后的各章中你将可以更深入地了解它们。
1.1.1 导入和导出向导
![]() |
图 1-1
1.1.2 商业智能开发工具集
商业智能开发工具集(Business Intelligence Develoopment Studio,BIDS)是用户作为
SQL
Server
2005
SSIS程序员而经常需要使用的核心工具,该工具的基础是Visual Studio
2005界面(如图1-2所示),后者等同于
SQL
Server 2000中的DTS Designer。该工具的妙处在于它未绑定到任何特定的
SQL
Server,换句话说,不必连接到
SQL
Server来设计
SSIS程序包。因而可以在与
SQL
Server环境断开的情况下设计程序包,然后再将程序包部署到目标
SQL
Server来运行它。在第3章将详细讨论该界面。

图 1-2