2014-12-03 59 views
0

我有幾個大型SQL查詢需要針對Postgres數據源運行。我在SQL Server 2008 R2上使用SSIS來移動數據。由於系統設置的方式,我必須通過PuTTY使用隧道並設置本地端口重定向。通過SSIS將數據從Postgres移動到SQL Server

在SSIS包中,我使用ADO.NET源和目標。我安裝了PostgreSQL驅動程序,並且我們能夠使32位版本工作。我的軟件包正在運行,我正在獲取數據,但數據轉換任務的運行速度非常慢,每秒大約有2000條記錄。

有沒有人有經驗使用靜態查詢Postgres旅行並將結果轉儲到SQL Server?任何提示/最佳實踐?

+1

對不起,我還沒有一個完整的答案。 從我的經驗來看,這個速度可能是SSH隧道的結果。 只需檢查postgresql或SQL Server是否承受壓力,或者是機器上的磁盤。我建議看看由putty和ssh服務器使用的CPU。 現在只需收集這些信息並編輯帖子。最佳做法:取決於查詢。如果您只需傳輸數據,我建議將其轉儲到平面文件中並批量導入。 – 2014-12-03 11:36:52

回答

0

您應該嘗試獲取數據並將其存儲在ssis原始文件中。 然後在原始文件數據上進行轉換以及任何你喜歡的東西。 之後,將其發送回數據庫。

一般儘量不要有太多的調用數據庫。

+0

你的意思是有postgres轉出一個平面文件? – 2015-02-26 01:00:03

+0

不,我的意思是你將有一個「OLE DB Source」從Postgre獲取數據,然後是一個「Raw File Destination」來存儲本地數據。 – dimis164 2015-02-27 09:54:27

+0

我得到「源有ntext」字段...將通過他們通過數據轉換任務慢下來? – 2015-02-27 20:43:34

相關問題