SSIS之数据流任务
数据流任务主要用于运行数据流以提取、转换、加载源数据。一个包中可以有多个数据流任务,也可以包含零个数据流任务。下面关系图显示含有一个数据流任务的包:

了解数据流任务后,我们就简要的学习一下如何创建数据流任务。
- 在工具箱中双击数据流任务控件或则将其拖放到控制流页面中。如图:

你可以根据需求来修改数据流任务的属性。
2. 单击数据流选项卡,从工具箱中拖放一个OLE DB Source.命名为Products。右击选择编辑进行配置。如图所示。
其中sql语句的问号表示通过变量传递的参数值。单击参数按钮将问号映射到创建的变量。如图:
你也可以通过变量属性的下拉框中选择新建变量选项创建新的变量。然后单击确定按钮回到父选项框,再然后单击确定按钮
3. 在工具箱将Lookup 查找控件拖放到数据流中,通过从数据源拖动绿色箭头到该转换,将Products源和Lookup转换相连接。将Lookup转换命名为Find Model name。然后双击该控件,做如下配置:
3.1 常规选项卡配置如下:

3.2 连接配置如下

3.3 列配置如下

3.4 高级配置如下
如果在常规选项卡中选择完全缓存模式,则该选项卡不能使用。

3.5 错误输出配置如下

这样一个完整的Lookup转换就配置结束。这个已完成的配置的转换现在的做法是,试图根据数据源中的ProductModelID匹配表ProductModel。如果无匹配的行,就会发生错误,不过,因为已经配置该转换忽略这一错误,因此如果没有找到匹配的。ModelName列将包含Null值。
4. 将一个派生列和行计数控件拖放到数据流中,分别命名为 Assign Default Values And Prie、No Mapping Count,并将Lookup转换的输出连接到该派生列行计数控件。如下图:

打开派生列的编辑框。配置如下信息

配置行计数信息如下

5.经过对源数据的转换后,将这些数据加载到目标数据中。可以将行计数拖放到设计窗格。连接派生列到行计数,将行计数命名为Mapping Count。双击它并配置如下信息:

将组建选项卡中的VariableName属性设为IntCount,当然这个变量事先要在变量工具箱中设计好。
- 在工具箱中的数据流目标卡中,托动一个平面文件目标。命名为Partner Extract。右击单击编辑,选择新建按钮,弹出对话框

然后单击确定按钮,弹出下面的对话框

剩下的配置,按连接管理器配置方式进行配置。在这我们是将转换后的数据输出到:
E:\BI资料\SSISETLDemo\partnerextract.txt 中
到此一个完整的数据流任务就建立完成。整体流程如下

运行该包。得到如下信息

SSIS之数据流任务的更多相关文章
- SSIS 剖析数据流之:连接和查找转换
在SSIS的数据流组件中,SSIS引擎使用Merge Join组件和 Lookup组件实现TSQL语句中的inner join 和 outer join 功能,Lookup查找组件的功能更类似TSQL ...
- SSIS自定义数据流组件开发(血路)
由于特殊的原因(怎么特殊不解释),需要开发自定义数据流组件处理. 查了很多资料,用了不同的版本,发现各种各样的问题没有找到最终的解决方案. 遇到的问题如下: 用VS2015编译出来的插件,在SSDTB ...
- SSIS 数据流的连接和查找转换
在SSIS的数据流组件中,SSIS引擎使用Merge Join组件和 Lookup组件实现TSQL语句中的inner join 和 outer join 功能,Lookup查找组件的功能更类似TSQL ...
- SSIS 数据流优化
一,数据流设计优化 数据流有两个特性:流和在内存缓冲区中处理数据,根据数据流的这两个特性,对数据流进行优化. 1,流,同时对数据进行提取,转换和加载操作 流,就是在source提取数据时,转换组件处理 ...
- SSIS中出现数据流数据源假死状态的解决办法
相信开发过Sql Server SSIS的人都遇到过在数据流中数据源假死的问题,特别是Excel Source特别容易假死,当job执行到数据流中的Excel Source时,既不报错也不执行,也没有 ...
- SSIS Data Flow优化
一,数据流设计优化 数据流有两个特性:流和在内存缓冲区中处理数据,根据数据流的这两个特性,对数据流进行优化. 1,流,同时对数据进行提取,转换和加载操作 流,就是在source提取数据时,转换组件处理 ...
- SSIS with vertica
使用ODBC进行连接,因为SSIS中没有直接的ODBC connection,所以使用ADO.NET的连接器. 九分钟才跑了四百来条数据. 这个图反应了SSIS的数据流速度还是可以的,但是瓶颈就在OD ...
- 微软BI 之SSIS 系列 - 理解Data Flow Task 中的同步与异步, 阻塞,半阻塞和全阻塞以及Buffer 缓存概念
开篇介绍 在 SSIS Dataflow 数据流中的组件可以分为 Synchronous 同步和 Asynchronous 异步这两种类型. 同步与异步 Synchronous and Asynchr ...
- FocusBI: SSIS体系结构(原创)
关注微信公众号:FocusBI 查看更多文章:加QQ群:808774277 获取学习资料和一起探讨问题. <商业智能教程>pdf下载地址 链接:https://pan.baidu.com/ ...
随机推荐
- Git is fundamentally a content-addressable filesystem with a VCS user interface written on top of it
w “加一层去解决问题”:计算机解决问题的思路.怎样将其应用到代码中呢?比如亚马逊接口的开发. git加一UI层去实现易用性和降低用户的迁移成本. https://git-scm.com/book/e ...
- python系列十四:Python3 文件
#!/usr/bin/python #Python3 文件 from urllib import requestimport pprint,pickle'''读和写文件open() 将会返回一个 fi ...
- split命令
语法:split [OPTION]... [INPUT [PREFIX]]常用参数说明: -a, --suffix-length=N generate suffixes of l ...
- zabbix3.2.4监控MySQL5.7.16状态
一.添加监控用户mysql> grant all privileges on *.* to 'zabbix'@'localhost' identified by 'zabbix';mysql&g ...
- 爬虫基础库之requests模块
一.requests模块简介 使用requests可以模拟浏览器请求,比起之前用到的urllib,requests模块的api更加快捷,其实ruquests的本质就是封装urllib3这个模块. re ...
- pip3命令报错Fatal error in launcher: Unable to create process using '"d:\old_files\py3.6\python.exe" "E:\py3.6\Scripts\pip3.exe" list'
cmd输入pip3 list命令报错 Fatal error in launcher: Unable to create process using '"d:\old_files\py3.6 ...
- selenium模块控制浏览器
利用selenium模块控制浏览器 导入selenium模块:from selenium import webdriver browserFirefox = webdriver.Firefox()#打 ...
- eclipse连接SqlServer2008(被它搞得惨兮兮)
建民大叔告诉我要考试做一个系统要求连接SqlServer2008,于是我便开始了“炼狱”,人家连接起来一路绿灯,我却一路红灯所以决定把它记录下来,给后来人提供方便. 第一个红灯: 启动服务后利用cmd ...
- java的服务端与客户端通信(1)
一.理解socket 1.1什么是socket? socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.应用程序通常通过"套接字"向网络 ...
- MyBatis 插入数据库返回主键
最近在搞一个电商系统中由于业务需求,需要在插入一条产品信息后返回产品Id,刚开始遇到一些坑,这里做下笔记,以防今后忘记. 类似下面这段代码一样获取插入后的主键 User user = new User ...