没有合适的资源?快使用搜索试试~ 我知道了~
验证是一个事件,该事件在Package执行时,第一个被触发,验证能够避免SSIS引擎执行一个有异常的Package或Task。延迟验证(DelayValidation)是把验证操作延迟到Package真正运行(run-time)时开始执行,当禁用延迟验证时,一旦验证操作返回错误(Error)或警告(Warning),Package就不会继续执行下去。在更新海量的数据时,通常需要用到暂存表把远端数据加载到本地,这就需要在Package执行之后,创建暂存表(staging table);在Package执行之后,删除暂存表,当禁用延迟验证时。当禁用延迟验证时,验证操作在Package执行之前,会检
资源推荐
资源详情
资源评论
SSIS 延迟验证方法延迟验证方法
验证是一个事件,该事件在Package执行时,第一个被触发,验证能够避免SSIS引擎执行一个有异常的Package或Task。延迟验证
(DelayValidation)是把验证操作延迟到Package真正运行(run-time)时开始执行,当禁用延迟验证时,一旦验证操作返回错误
(Error)或警告(Warning),Package就不会继续执行下去。在更新海量的数据时,通常需要用到暂存表把远端数据加载到本地,
这就需要在Package执行之后,创建暂存表(staging table);在Package执行之后,删除暂存表,当禁用延迟验证时。当禁用延迟
验证时,验证操作在Package执行之前,会检测暂存表是否存在,由于暂存表需要在Package执行之后创建,因此,验证事件发出错
误消息,Package停止运行,这对这种情况,必须使用延迟验证,在真正引用到暂存表时,延迟暂存表是否存在。
一,延迟验证属性一,延迟验证属性
延迟验证属性作用于Package,Task,容器(Container)和链接管理器(Connection Manager),默认情况下,禁用延迟验证,这
就意味着,在Package执行时,首先验证Package,Task,容器和链接管理器引用的对象是否有效,如果有任何对象不存在,那么验
证失败,Package停止运行。
在Package开始执行之前,验证Package,能够尽早发现错误,避免浪费系统资源去执行一个必定会失败的Package,合理配置,会
带来性能的优化。
二,验证方式二,验证方式
按照验证的执行顺序来看,Package包含两种类型的验证方式:
Package Validation:在Package执行时,首先验证Package及其包含的所有组件,是Package级别的验证;
组件验证组件验证:组件级别的验证,包含Task , Connection Manager和Container,在组件开始执行之前,验证组件中引用对象的有效性。
验证分为两个阶段(Phrase),首先进行Package级别的验证,而后进行组件级别的验证:
Package级别的验证包含组件级别的验证,如果禁用延迟验证,那么组件级别的验证会执行两次,这在设计Package时,不是一个好
的选择,这会增加Package的验证时间,还会增加每一次打开Package进行编辑的时间。而启用延迟验证,这会禁用了Package 级别
的验证,以至于在Package的设计时(design-time),只执行组件级别的验证,注意,任何情况下,无法禁用组件级别的验证。
通常情况下,对一个完成开发的Package启用延迟验证,是一个好的选择,这会减少Package整体的执行时间,因为跳过了Package
级别的验证。
1,禁用延迟验证,禁用延迟验证
禁用Package的延迟验证,需要设置Package的DelayValidation属性值为False,默认情况下,Packag会禁用延迟验证,如下图所
示:
那么在Package开始运行之后,第一件事就是开始执行Package Validation,当Package级别的验证操作完成之后,开始验证
Package包含的各个Task等,如果验证发现错误,Package不会被执行,直接报错。
2,启用延迟验证,启用延迟验证
启用Package的延迟验证,需要设置Package的DelayValidation属性值为True,如下图所示:
当启用延迟验证时,Package会执行下去,知道运行到特定的组件时,才会执行组件验证,如果组件验证失败,那么抛出错误消息,
停止Package的运行。
组件验证发生真正执行组件,如果上流组件新建一个暂存表(staging table),下游组件引用该暂存表,并不会出现异常,这是因为
在该组件进行验证时,该暂存表已经存在。
三,延迟验证属性的层次结构三,延迟验证属性的层次结构
在Package级别上设置DelayValidation属性并不能阻止打开Package时的最初的验证过程,它只是在运行包时延迟Package级别的验
证,这就意味着Package将继续运行,但是当打开Package时警报仍然出现。如果想阻止打开Package时的验证,那么必须把Task级
资源评论
weixin_38529239
- 粉丝: 4
- 资源: 927
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功