理解控制流和数据流的一个入口是看他们如何运行的。一个控制流任务是一个最小的执行单位,它的运行结果有成功,失 败,和完成,在运行它的下一个任务之前必须得到这些结果。在数据流任务中,转换时最基本的元素。一个转换任务和控制任务是有很大的区别的。转换任务之间是 可以并行执行的,不必等待上一个转换任务执行完毕。

  

控制流和数据流之间的比较

控制流和数据流之间看上去很相似,但是他们有天壤之别。控制流不会处理组件之间的数据,它负责协调单独的组件单元之间的工作。这里有一些概念:
   工作流协调
   处理导向
   顺序的或平行的任务的执行
   异步处理
控制流任务可以顺序的执行,大多数时候他们会同时以这两种方式来执行。图1实例一个简单的控制流任务,它是线性执行的。这个包的执行顺序是连续的,同一时间只能运行一个任务。

图1

和控制流不同是,数据流可以发出分支,分割,再合并,并且是并行执行的。要注意的是即使他们和控制流任务一样也可以连成一条线,但是他们仍然是并行执行的。这里有一些数据流任务的概念:
   信息导向
   数据矫正和转换
   协调处理
   数据源和数据目的

和上面图1类似,图2实例一个类似的数据流任务,他们也是一一相连的。和图1中的任务项目,在图2中的一串转换中只执行了一个任务,并且这些转换都是并行执行的,换句话说可能有一行数据已经被存入到数据目的中,但是还是有数据源源不断地从数据源中流出,处理。

图2

数据流转换是同步执行的,所有的组件都是被一个流来控制。

SSIS包从开始到最后的执行时间

在一个控制流任务中可以包含多个数据流,一个包的执行时间从第一个控制流任务开始到最后一个控制流任务结束,包含中间可能的数据流任务。但是要注意的是尽可能使并行执行的任务多一些,集成服务会自动给予适当的优化,使执行时间最短。
图3展示一个包中的多个并行执行的任务。

图3

控制流中的任务会并行执行,这样执行的效率比图10-1中的线性执行要快一些。

原地址:http://www.cnblogs.com/tylerdonet/archive/2011/09/29/2195798.html

SSIS 控制流和数据流(转)的更多相关文章

  1. SSIS 控制流和数据流

    在SSIS的体系结构中,Package是SSIS的最重要的部分,从本质上来讲,Package是一个有序地执行任务的单元.Package的核心是控制流(Control Flow),用于协调包中所有组件的 ...

  2. SSIS技巧--优化数据流缓存

    问题 我们经常遇到一种情况,在SSMS中运行很慢的一个查询,当把查询转化成从源到目的数据库的SSIS数据流以后,需要花费几倍的时间!源和数据源都没有任何软硬件瓶颈,并且没有大量的格式转换.之前看了很多 ...

  3. SSIS中出现数据流数据源假死状态的解决办法

    相信开发过Sql Server SSIS的人都遇到过在数据流中数据源假死的问题,特别是Excel Source特别容易假死,当job执行到数据流中的Excel Source时,既不报错也不执行,也没有 ...

  4. 微软BI 之SSIS 系列 - 通过设置 CheckPoints 检查点来增强 SSIS Package 流程的重用性

    开篇介绍 通常一个 ETL Package 是由多个控制流和数据流共同组成,有的时候 ETL 的步骤可能会比较多,整个流程执行下来的时间可能比较长.假设在 ETL Package 中包含5个Task, ...

  5. SSIS with vertica

    使用ODBC进行连接,因为SSIS中没有直接的ODBC connection,所以使用ADO.NET的连接器. 九分钟才跑了四百来条数据. 这个图反应了SSIS的数据流速度还是可以的,但是瓶颈就在OD ...

  6. 第二篇 Integration Services:SSIS数据泵

    本篇文章是Integration Services系列的第二篇,详细内容请参考原文. 简介SSIS用于移动数据.数据流任务提供此功能.因为这个原因,当介绍SSIS时我喜欢从数据流任务开始.数据流任务的 ...

  7. 第一篇 Integration Services:SSIS是什么

    本篇文章是Integration Services系列的第一篇,详细内容请参考原文. Integration Services是一种在SQL Server中最受欢迎的子系统.允许你在各种数据源之间提取 ...

  8. 转 SSIS处理导入数据时, 存在的更新, 不存在的插入

    SSIS处理导入数据时, 存在的更新, 不存在的插入 分类: DTS/SSIS2006-09-10 12:43 18185人阅读 评论(22) 收藏 举报 ssissql servermicrosof ...

  9. 微软BI SSIS 2012 ETL 控件与案例精讲面试 200 问(SSIS 面试题,ETL 面试题)

    开篇介绍 本自测与面试题出自 微软BI SSIS 2012 ETL 控件与案例精讲 (http://www.hellobi.com/course/21) 课程,对于学完本课程的每一课时和阅读完相关辅助 ...

随机推荐

  1. CSS3实现轮播图效果2

    先前用CSS3做了一个一张图片实现的轮播,但是这样的图片很难找,于是又改进了一下. HTML: <div class="box"> <ul> <li& ...

  2. shell下添加计划性任务

    */1 * * * * /bin/sh /tmp/hello.sh ###每1分钟执行以下/tmp下的hello.sh脚本 service crond restart   重启任务计划 * 12  * ...

  3. centos内核优化--转至网络

    A.关闭selinux(可以预防nginx修改根目录后访问出现404或者403) vi /etc/selinux/config SELINUX=disabled B.修改打开最大文件数句柄也就是 so ...

  4. php抓取post方式提交的页面

    function curlBy($url, $data=array()) {        $ch = curl_init();        if(!empty($data)){           ...

  5. linux shell 逻辑运算符、逻辑表达式

    shell的逻辑运算符 涉及有以下几种类型,因此只要适当选择,可以解决很多复杂的判断. 一.逻辑运算符  逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标! -f 常用!侦测『档案』是否存在 e ...

  6. 清空FORM表单的几种方式 Reset 重加载

    1. form中定义name <form name = "sbform" action="sb_add.php" method="post&qu ...

  7. 深入理解Java String#intern() 内存模型

    原文出处: codelog.me 大家知道,Java中string.intern()方法调用会先去字符串常量池中查找相应的字符串,如果字符串不存在,就会在字符串常量池中创建该字符串然后再返回. 字符串 ...

  8. 完全面向于初学者的Node.js指南

    新的上班时间是周二至周六,工作之余当然要坚持学习啦. 希望这篇文章能解决你这样一个问题:“我现在已经下载好Node.Js了,该做些什么呢?” 原文URL:http://blog.modulus.io/ ...

  9. Java 逻辑运算符、位运算符、移位操作符 总结(Java 学习中的小记录)

    Java 逻辑运算符.位运算符.移位操作符  总结     作者:王可利(Star·星星) 逻辑运算符,表格如下: 解析逻辑运算符表: 1.与 (&) 特点:两个都为真的时候,结果为真.两个为 ...

  10. LightOJ 1317 第八次比赛 A 题

    Description You probably have played the game "Throwing Balls into the Basket". It is a si ...