SSIS 2012新特性:连接管理器还有更多

日期: 2012-09-13 作者:Robert Sheldon翻译:冯昀晖 来源:TechTarget中国 英文

编者按:本系列文章关于SSIS的新特性,共有三部分,本文是第二部分。您可以先了解第一部分“针对开发人员的SSIS重要新特性”。

  SSIS 2012有一个新特性就是,它支持关闭连接管理器的功能,这一点使开发人员的生活更轻松了。默认情况下,当你打开程序包时,SSIS会检查所有数据源,确保外部元数据是有效的。如果你的包中包括了许多网络资源连接,或者数据源访问比较慢(或者临时不可用),那打开包的这个过程就会消耗非常多的时间;因此,如果你需要经常重新打开包的话,这会把你搞得很沮丧。

  离线连接管理器

  你可以通过在个体组件上设置“DelayValidation”属性来解决这个问题;但是如果你发现你必须经常重设这个属性,而且有许多这类组件需要操作,你就需要花大量时间处理这个问题,而不能专心开发你需要的程序包了。

配置连接管理器为离线工作

配置连接管理器为离线工作

  然而,SSIS 2012使你有了更简便的办法。现在只要通过几次点击,你就可以指定连接管理器的离线或者在线状态。要设置连接管理器为离线工作状态,请在“连接管理器”窗体中该组件上右击,然后点击“离线工作”菜单,如图1所示。

  当你设置连接管理器为离线工作时,SSIS就会在“连接管理器”窗体中的连接管理器名称前面增加一个图标(红色的向下箭头)。图2展示了“AW2012 ”连接管理器设置为离线工作之后的样子。

连接管理器设置为离线工作

连接管理器设置为离线工作

  一旦你设置连接管理器为离线工作,使用这个连接的组件将不再验证元数据,直到连接管理器回到在线状态才会验证。事实上,任何引用该连接管理器的任务或者数据流组件,都会标记上一个红色叉号,表示该组件不能获取连接。

  如果想让连接管理器回到联机状态,只需要右键单击该连接管理器,然后再次点击“离线工作”菜单取消该选项选中状态即可。你还可以不用做任何操作,当你关闭并重新打开程序包时,所有连接管理器都会被验证并设置为联机工作状态。

  既然重新打开包会设置所有连接管理器为联机工作的话,看起来使用离线工作选项似乎没有什么优势了。“DelayValidaton ”属性的设置在你关闭并重新打开包之后仍然存在。与该属性不同的是,SSIS支持在打开包之前会将所有连接管理器设置为离线工作。在项目打开包没打开的情况下,在SSIS菜单中选择“离线工作”选项,然后再打开你的包,所有连接管理器将被设置为离线工作状态,这样就避免了初始化的验证过程。

  列映射解析

  想象一下这样的场景:你创建了一个SSIS包,配置复杂的数据流,然后发现在你的数据源那边有一个字段名变了。在过去,SSIS对这类干扰处理得不是很好,尤其是涉及数据流的数据路径变化时。这种变更情况下重新分配映射列经常会导致个别组件的重新配置或者重新实现。SSIS 2012解决了这个问题,它支持轻而易举地更新列引用。

在数据路径列映射中的一个错误

在数据路径列映射中的一个错误

  我们来看一个例子,理解一下它是如何工作的。图3展示了一个数据流,其中包含文本文件数据源和“OLE DB”目标。在该程序包创建之后,数据源中的一个列名改变了,这就导致上图看到的红色叉号“X”指向数据路径。

解决数据路径中的列映射问题

解决数据路径中的列映射问题

  如果你在数据路径上单击右键,就会发现一个新选项菜单“重新映射引用”的出现,如图4所示。点击该菜单,你就可以修改数据流中的输入和输出引用,让它指定为特定的数据路径。

数据路径中未映射的列

数据路径中未映射的列

  点击该菜单项运行“调整引用”对话框,如图5所示。你可以看到三个列映射到“Column 1, Column 2 和 Column 3 ”,这些信息都显示在对话框中间的“映射列”表格中。请注意,源列表中包含有“ColA”列。这就是名称变化的列,原来是“ Column 0”,改成了“ColA”。还要注意的是“目标”列表中包含有“ Column 0”列。原来的源列和目标列共享使用这个名称,现在变成彼此映射了。

映射与数据路径相关联的列

映射与数据路径相关联的列

  要映射“ColA ”到“Column 0”列,你可以把每个列拖拽到“映射列”表格合适的行中,这样他们就手动映射上了,如图6所示。

预览调整后的列引用

预览调整后的列引用

  一旦你给“已映射列”表格中增加了列,就可以通过点击“预览变更”按钮来验证你的变更。这个操作会运行“预览调整引用”对话框,如图7所示。如你所见,指向“ OLE DB”目标的“Column 0”,现在映射到“ColA ”列了。

  那些经历过数据路径引用映射调整的人们将会对此有特殊的理解,他们会认为这个新功能可以节约很多时间。只需要几次简单的点击,你就可以重新映射列,马上就能回到正常业务。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐