标签:
控制流和数据流之间的比较
控制流和数据流之间看上去很相似,但是他们有天壤之别。控制流不会处理组件之间的数据,它负责协调单独的组件单元之间的工作。这里有一些概念:
? 工作流协调
? 处理导向
? 顺序的或平行的任务的执行
? 异步处理
控制流任务可以顺序的执行,大多数时候他们会同时以这两种方式来执行。图1实例一个简单的控制流任务,它是线性执行的。这个包的执行顺序是连续的,同一时间只能运行一个任务。
图1
和控制流不同是,数据流可以发出分支,分割,再合并,并且是并行执行的。要注意的是即使他们和控制流任务一样也可以连成一条线,但是他们仍然是并行执行的。这里有一些数据流任务的概念:
? 信息导向
? 数据矫正和转换
? 协调处理
? 数据源和数据目的
和上面图1类似,图2实例一个类似的数据流任务,他们也是一一相连的。和图1中的任务项目,在图2中的一串转换中只执行了一个任务,并且这些转换都是并行执行的,换句话说可能有一行数据已经被存入到数据目的中,但是还是有数据源源不断地从数据源中流出,处理。
图2
数据流转换是同步执行的,所有的组件都是被一个流来控制。
SSIS包从开始到最后的执行时间
在一个控制流任务中可以包含多个数据流,一个包的执行时间从第一个控制流任务开始到最后一个控制流任务结束,包含中间可能的数据流任务。但是要注意的是尽可能使并行执行的任务多一些,集成服务会自动给予适当的优化,使执行时间最短。
图3展示一个包中的多个并行执行的任务。
图3
控制流中的任务会并行执行,这样执行的效率比图10-1中的线性执行要快一些。
原地址:http://www.cnblogs.com/tylerdonet/archive/2011/09/29/2195798.html
标签:
原文地址:http://www.cnblogs.com/littlewu/p/5725891.html