【TechTarget中国原创】传统DTS迁移 vs.looping:
DTS包1:传统DTS数据迁移/确认范例
我设计过很多DTS Packages,这些包可以在许多的资源中进行数据抽取和整合、并最终将这个数据迁入taging表中。由于我已经习惯了SQL Server(它就像操场一样开阔,让人觉得非常舒适),所以只要那里有数据,我就能够进行验证、重复数据删除、整合、转换、决定查找值、处理渐变尺寸等等。在DTS下,我一般对存储过程进行编码来完成一些任务。SSIS支持大量功能和pre-baked任务,这项工作的大部分现在可以在不进行外部调用到存储程序的情况下采取内嵌的方式完成。我们的第一个传统DTS包不用自定义任务、data driven query tasks、dynamic properties、Active X 脚本或调用 DTS Object Model。如果你需要迁移包那你又将使用什么策略?我们将在后面的章节中提到:下面是我们传统DTS数据迁移包。

DTS包2:DTS Looping 范例
一种我们可能都要遇到的ETL工具就是通过源目录进行循环到处理文件并将文件迁移到存档文件目录。由于在DTS没有包含这一功能,那么我们就要用到ActiveX脚本来安装。ActiveX脚本用File System Object将处理文件从输入目录中迁移到存档文件目录中。此外,这一脚本还动态改变了源目录文件中的数据。这一循环是通过使用DTS Object Model禁用或激活的。但是这也取决于我们是否在源目录中处理了所有的源文件或者是否有更多的文件要处理。虽然我们的样本包只作了稍微的改变,但原来的DTS Looping Package还进行了充分存档备份,并且还能进行下载。
可能有很多都不得不在DTS中进行循环操作的人都用到这个范例,他们遇到的情况和我在开始时遇到的一样。在下面的章节中,我们将阐述当你需要迁移这个包时可能遇到的情况。下面就是DTS Looping Package:

调用Upgrade Advisor
SQL Server 2005 Upgrade Advisor是基于惯例引擎而建造的。当你实行这一工具时,简单的向导会提示你在本地或远程服务器上选择组件。基于你的选择,向导还会提示你判断每个组件的详细情况,如分析一个具体的DTS Package。我下面将介绍Advisor的屏幕快照(由于简短,一些屏就省略了)。

你想分析SQL Server的哪些组件?

你的DTS包是在SQL Server里还是保存在文件里?

关于Upgrade Advisor
注意你可能遇到生成Advisor Report的分类问题,如红色预警或黄色警告(你可以根据需要对每一项进行选择)。另外,Advisor还会告诉你这个问题在你迁移之前或之后是否需要解决。下面我们分别看看每个迁移所存在的每个问题。
1、Meta Data Services
在此之前我们已经知道我们再也不能够用Meta Data Services挽救SQL Server包了。SQL Server包在你升级之前应该迁移到SQL Server存储机里(在msdb数据库里)或架构存储文档里。我们在SQL Server的msdb里存储了DTS Packages。