SSIS Design3:并发执行

本文介绍了ETL过程中并发处理数据的策略,包括利用优先约束并发处理数据、从单数据源表中并行处理数据的方法及如何根据服务器CPU数量确定最大并发度。

1,利用优先约束来并发处理数据,Data Flow Task 和 Data Flow Task 1 是并发执行的,而 Data Flow Task2 必须等到 Data Flow Task 和 Data Flow Task 1 执行完成之后,才开始执行。

 

2,如何从一个数据源表中并发处理数据,设计思路是

将一个表中的数据平均分成N份,各个数据流之间并发处理。

例如分为3份,可以使用%3,将数据分为三个子数据流并发处理数据。

复制代码
select *
from dbo.SourceTable
where checksum(table_column)%3=0


select *
from dbo.SourceTable
where checksum(table_column)%3=1


select *
from dbo.SourceTable
where checksum(table_column)%3=2
复制代码

 

3,最大的并发程度

由于Server在同一时间执行的Process的最大数量是CPU的个数,一个CPU在某一时刻,只有一个Process处于Running状态,所以最大并发度不要超过CPU的个数。

通过以下两个属性控制ETL执行的并发度

Package属性:MaxConcurrentExecutalbes Specifies the maximum numbr of executables to concurrently execute int the package

Data Flow Task的属性:EngineThreads 用以确定Data flow Task中各个转换组件同时运行的最大线程数,每一个转换组件最多使用一个Thread

 

转载于:https://www.cnblogs.com/wangsicongde/p/7551295.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值