使用C#从Oracle提取到Transform-Load到SQL Server

|| 我已经闲逛了几天,发现这个社区很棒!我确定有人可以对我的问题发表意见: 我们在Oracle服务器中拥有原始数据,并且查询获取约312 MB的数据(只是我们需要在几个表中连接的列)。这是使用
Oracle.DataAccess.Client
(即
FetchSize = RowSize * 512
)完成的,大约3.9 MB。我当前正在使用
OracleDataReader
,并在他的
while()
循环中进行处理。 然后使用准备好的参数化的“ 4”写入处理结果。加入维表后,我们可以从此数据库直接在Excel中返回所需的数据。 我正在寻找提高性能的方法。是否可以对5个线程和6个线程进行多线程处理,并对行的处理进行多线程处理(例如,启动4个线程并在传入的行之间平均划分进来的行),并且在SQL Server 2005中是否存在类似于ѭ7的东西? 我不是在寻找复制粘贴代码,而是对已经存在的最佳实践或模式更感兴趣。 最好的祝福,     
已邀请:
我不确定在线程之间划分传入行会带来什么好处,因为它们都必须插入同一目标表中。插入数据库很可能会成为瓶颈,并且客户端上的多个线程可能最终会互相等待。 我通常的方法是使用SqlBulkCopy从OracleDataReader中读取行,并将其插入目标数据库中的空登台表中。 然后分批处理登台表,将UPSERTing到目标表中。每一批将是一个事务。     

要回复问题请先登录注册