SSIS Design6:利用数据流

简介:

数据流利用内存来缓冲数据,并在内存中处理数据转换,由于内存的访问速度是非常快的,所以SSIS数据流转换性能是非常高效的。SSIS Engine将数据分批加载到内存中,当Data Flow将一批新的数据加载到内存时,下游转换组件会对已经加载到内存中数据进行处理,同时,目的组件会将处理完成的数据加载到Target Table中,数据的读取,转换和加载同时进行,这就是数据流的优势。

1,利用数据流,能够减少暂存和昂贵的disk IO 操作

在大量数据的ETL系统中,Disk IO是系统性能的bottlenect。相比内存 RAM,Disk IO的读取和写入速度非常慢,将内存缓冲区中的数据写入暂存表,再从暂存表中读取数据到内存中,不仅成倍增加了Disk IO,而且限制了数据流的并发处理能力。请记住,使用暂存表的场景是:ETL系统中存在大量数据的更新操作。这是由于Data Flow 没有基于集合的更新转换组件,OLEDB Command 转换组件是逐行对数据进行更新操作,使用暂存表,能够充分利用RDBMS对数据进行基于集合的更新操作的优势。如果ETL系统不存在大量数据的更新操作,请选择使用数据流来处理数据。

2,利用数据流,减少对RDBMS的依赖

使用Data Flow转换组件来联接和清洗数据是十分高效的,这是因为,数据的读取,转换和加载同时进行。RDBMS对数据的处理是原子性的,在数据被处理完成之前,是不能被其他SQL语句处理的,相反,数据流可以并行地处理数据的提取,清洗,联接和写入,因此,充分利用数据流的并发处理优势,会使数据整体的处理时间大幅减少。

3,利用RDBMS处理数据源

在使用Source适配器获取数据时,利用数据库的order by 子句进行排序,将会比Sort 转换更有效率;对于源是多表联接的查询语句,使用RDBMS获取数据将会更快。

作者悦光阴
本文版权归作者和博客园所有,欢迎转载,但未经作者同意,必须保留此段声明,且在文章页面醒目位置显示原文连接,否则保留追究法律责任的权利。
分类: SSIS




本文转自悦光阴博客园博客,原文链接:http://www.cnblogs.com/ljhdo/p/5521868.html,如需转载请自行联系原作者
目录
相关文章
|
3月前
|
前端开发 JavaScript Android开发
Jetpack MVVM 七宗罪之四: 使用 LiveData/StateFlow 发送 Events
Jetpack MVVM 七宗罪之四: 使用 LiveData/StateFlow 发送 Events
48 0
|
4月前
|
前端开发 UED 开发者
非常好用的组件库【semi.design】
非常好用的组件库【semi.design】
38 0
|
8月前
|
数据格式
hook项目实例之原始数据形成ant design table表格
hook项目实例之原始数据形成ant design table表格
29 0
|
8月前
|
数据处理 数据格式
hook项目实例之原始数据形成ant design table表格 2
hook项目实例之原始数据形成ant design table表格
39 0
|
10月前
|
数据处理 数据格式
ant design table项目中遇到的数据处理实例
ant design table项目中遇到的数据处理实例
61 0
|
10月前
|
前端开发
ant design table实现上下行拖拽功能(类组件)
ant design table实现上下行拖拽功能(类组件)
196 0
|
11月前
ant design table实现上下行拖拽功能(类组件)(1)
ant design table实现上下行拖拽功能(类组件)
73 0
|
11月前
ant design table实现上下行拖拽功能(类组件)(2)
ant design table实现上下行拖拽功能(类组件)
50 0
|
Web App开发 前端开发
SAP Fiori OData取数据的同步模式和异步模式比较
SAP Fiori OData取数据的同步模式和异步模式比较
162 0
SAP Fiori OData取数据的同步模式和异步模式比较