SSIS中的容器和数据流—数据目的

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 在Data Flow中Destination从数据源或者数据处理流程中接收数据。在SSIS中数据可以导入到任何OLE DB支持的数据源,平面文件或者Analysis Service中的数据。和数据源一样Destinations也通过连接管理器来连接,不同之处是有一个数据映射界面如图4-11。

在Data Flow中Destination从数据源或者数据处理流程中接收数据。在SSIS中数据可以导入到任何OLE DB支持的数据源,平面文件或者Analysis Service中的数据。和数据源一样Destinations也通过连接管理器来连接,不同之处是有一个数据映射界面如图4-11。

img_4da7667beafae8df1b320d00e053f100.png

4-11

只有在连接到数据流之后才可以配置Destinations,使用绿色箭头将数据源或者数据流和Destinations连接起来。如果在连接之前就配置Destinations会得到如图4-12的警告提示。

img_9c20ee4c40b6f71fb1f6e5345062e059.png

图4-12

 

数据挖掘模型接收器Data Mining Model Training

数据挖掘模型可以接收分析Analysis Service中的数据仓库中的数据,它可以分析多个数据挖掘模型。执行这种操作需要连接Analysis Service。注意:传递给数据挖掘模型的数据必须预先分类,为达到这种目的需要使用排序传输。

数据读取接收器DataReader Destination

数据读取接收器是将SSIS数据流扩展到SSIS外部,并提供数据接口供外部使用例如供报表服务使用。编辑数据读取接收器时要给它取一个合适的名字,使得在以后的后续的开发过程中更加容易的使用。在图4-13中可以看到这个接收器的名字是RowSampling Output,设置好名字等其他属性之后再InputColumn标签页面内检查你要输出到接收器的数据列。

img_120a68d0bcdecfc150c2ec3a7d5cac25.png

图4-13

如果要在报表服务中使用这个接收器,需要保证有可用的SSIS连接。在报表服务中确保在RSReportDesigner.config文件中有一个包含SSIS的扩展节点<DATA>,在报表设计中将会看到一种新的连接类型SSIS,选择这种数据源,在连接请求框内输入以下类似的完全限定文件名称:

-f C:\Packages\RSSPartnerFeed.dtsx

这个是用来指定读取数据接收器为报表数据的来源。每次请求报表就会自动执行package来从数据流中获得数据。可想而知只有从package中请求得到数据,报表中才会展现数据。在部署报表之前要先调试好package,因此程序的运行速度可能会因此而减慢。

在实际应用中使用SSIS作为报表的数据源对于展现非SQL数据会非常的有用,例如想要展示一些扁平数据RSS feed,在后面部分中将会详细说明。

 

Dimension处理和Partition处理 

 Dimension处理主要处理Analysis Service中的一些Dimension,可以选择展现全部Full,添加Add(incremental)和更新Update。在Connection Manager栏中配置连接,然后会看到实际表中的Dimensions如图4-14,选择要进行process的Dimension,点击Mapping标签转到页面,将数据列从数据流中映射到Dimensions中。最后在Advanced界面中选择怎么处理错误,一般情况下这个页面保持默认值,除非有一些特殊处理。

img_239fb72ca81c45857365a9c79d491bf5.png

图4-14

Partition处理有类似的选项,不同的是它是处理Analysis Service中的partition。

 

Excel  Destination

Excel Destination和Excel数据源非常的类似,不同的是它接收数据而不是抽取数据,它的编辑页面和Excel数据源的编辑界面是相似的。

 

平面文件Destination

平面文件Destination用来将数据送入到一个平面文件中,和其他连接一样,这里需要新建一个文件链接。在Header选项中可以输入数据列的名字,这样在文件中就会添加一个列名行,最后在Overwrite data in the file选项可以设置是否每次执行都将数据重新写入文件。

 

OLE DB Destination

在SSIS中最常用的一种就是OLE DB Destination了,如图4-15。它可以将数据写入OLE DB兼容的数据对象中例如Oracle,Access,SQL Server。和数据源一样,这里也需要配置OLE DB数据连接。在Data Access Model中选择Table or View — Fast Load,在下面就会有一些单选框例如Table Lock,这种设置只是在SQL Server数据库中才会有。在Rows Per Batch option选择项中设置一次允许多少行数据执行,Maximum Insert Commit Size属性设置使用Fast Load Option时一次允许多少量(kb)的数据执行,Keep identity选项在执行时保留数据完整性。

img_0e5a3a51249405c4591273105b3e6eb0.png

图4-15

  

原始数据Destination

原数据Destination是一种不需要设置连接的速度非常快的数据对象。在编辑界面内,需要指定一个原数据文件,原数据一般是一种中转数据,写入文件之后其他的package就可以使用这种数据文件作为数据源。数据的格式简单,转换的速度非常快,在有特殊的速度要求时才会使用这种数据源。

  

记录集Destination

记录集Destination可以将数据转移到一个ADO数据集,例如将数据集读取到一个dataset之后,然后再使用Script task从一个变量中读取到这些数据。这种Destination不支持错误处理,这是它的一个缺点。

  

SQL Server 和移动Destination

SQL Server Destination是SQL数据库中最佳的应用,它使用bulk insert是的写入速度非常地快。它从数据流中获得数据然后使用bulk insert快速地将数据写入到数据库。在编辑界面可向像Bulk insert task那样编辑,例如设置executing triggers属性,lock table属性,注意这种Destination使用内存中的接口,所以它只能接受同一个服务器中的数据,也就是本机数据。最后移动Destination可以将数据导入到一个小型机或其他移动设备上。

作者:Tyler Ning
出处:http://www.cnblogs.com/tylerdonet/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过以下邮箱地址williamningdong@gmail.com  联系我,非常感谢。

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
4月前
|
Shell Linux Docker
Docker -v 挂载主机目录到容器中(及数据卷容器)
Docker -v 挂载主机目录到容器中(及数据卷容器)
91 0
|
7天前
|
程序员 索引 Python
06-python数据容器-set(集合)入门基础操作
06-python数据容器-set(集合)入门基础操作
|
7天前
|
索引 容器
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
06-数据容器str(字符串)-字符串的下标索引/字符串无法修改/查找字符串下标初始值/字符串的替换/字符串的分割/字符串去除前后空格/统计字符串的数量/字符串的循环遍历/对字符串进行分割
|
7天前
|
索引 容器
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数
06-python数据容器-list列表定义/list的10个常用操作/列表的遍历/使用列表取出偶数
|
4月前
|
存储 Docker 容器
Docker容器数据卷与数据共享持久化
Docker容器数据卷与数据共享持久化
94 0
|
1月前
|
存储 Python 容器
Python-数据容器
Python-数据容器
12 3
|
2月前
|
存储 机器学习/深度学习 Cloud Native
深入浅出Docker容器数据卷
深入浅出Docker容器数据卷
38 1
|
2月前
|
存储 Python 容器
python数据容器之字典相关的操作
python数据容器之字典相关的操作
17 2
python数据容器之字典相关的操作
|
2月前
|
存储 Python 容器
python数据容器之集合相关的操作
python数据容器之集合相关的操作
19 1
|
2月前
|
存储 索引 Python
python数据容器之列表相关的操作
python数据容器之列表相关的操作
24 1