将数据从Postgres导入SQL Server 2008 R2的最快方法?

时间:2015-02-25 23:50:08

标签: postgresql ssis sql-server-2008-r2 etl

我正在使用SSIS进行各种数据报告。源是Postgres,目标是SQL Server 2008 R2。我们使用Windows unicode 32位驱动程序通过系统DSN(%WINDIR%\ SysWOW64 \ odbcad32.exe)连接到Postgres。我正在使用ADO.NET和/或OLEDB对象的数据转换任务来移动数据(我尝试了几种组合)。

大多数查询只是SELECT * FROM tbl_postgres,并且返回的记录不会超过1M不同类型的记录,主要是VARCHAR(10) - (100)int和几个大注释列。

Postgres服务器性能还可以。问题似乎是在SQL Server端。从Postgres获取任意数量的数据需要相对较短的时间,但一旦SSIS进入"执行阶段就开始了#34;模式,我从任何表中获得每秒2k的记录,除非它非常小。

有时,记录计数根本不会移动(例如SSIS仍然说"执行阶段正在开始"),但随后又增加了3k记录并静止了10分钟。最终,SSIS任务要么直接死亡,要么超时,要么变成红色和#34;来自元组"。

有没有办法优化SSIS以便从Postgres快速插入数据?我的最终目标是将Postgres查询的结果插入到SQL Server表中。感谢。

0 个答案:

没有答案