我是SSIS的新手...... 我升級了一個包(從2008到2010 Visual Studio),它連接到一個平面文件並將數據轉儲到一個新表中。 我每5分鐘獲得約25個文件。 問題是,在包中,它的需要超過15秒才能連接到一個單獨的文件,但傳輸速度很快。由於速度很慢,因此有很多文件未處理。 我的問題是我該如何讓它更快?在SSIS中,數據流連接需要很長時間
我以爲也許升級是一個問題,所以我做了一個全新的包。然後我嘗試連接兩個數據庫,即使連接時間相同。
我是SSIS的新手...... 我升級了一個包(從2008到2010 Visual Studio),它連接到一個平面文件並將數據轉儲到一個新表中。 我每5分鐘獲得約25個文件。 問題是,在包中,它的需要超過15秒才能連接到一個單獨的文件,但傳輸速度很快。由於速度很慢,因此有很多文件未處理。 我的問題是我該如何讓它更快?在SSIS中,數據流連接需要很長時間
我以爲也許升級是一個問題,所以我做了一個全新的包。然後我嘗試連接兩個數據庫,即使連接時間相同。
您所描述的內容聽起來不像連接問題,但更多的是讀取並加載到緩衝區中的文件的開始。需要考慮的事情是:
: - 確保平面文件連接上的列大小是準確的(而不是全部設置爲字符串(500)或類似的東西)。這對一次處理多少行具有直接影響 - 增加數據流中的DefaultMaxBufferRows和DefaultBufferSize以增加每個緩衝區的行數 - 確保將oledb目標設置爲快速加載。如果您正在加載堆,請確保tablock處於打開狀態。如果您正在加載聚簇索引並且有多個流將更新同一個表,請確保tablock未打開,否則您將自行阻止。在這種情況下,我會考慮重新設計順序加載或使用多文件源的方法。
如何判斷文件的連接時間?您是否在討論在調試模式下開始在緩衝區中看到行之前需要多長時間?數據流中是否還有其他內容,即查詢,還是僅僅是一個平面文件源和oledb目的地? – 2014-11-06 12:50:09
運行程序包時,在調試模式下需要大量時間才能進入數據流。沒有查找,只是平面文件src和oledb目的地。如果您需要更多信息,請問我......在這種情況下,我不知道有多少信息是足夠的!儘快解決這個問題! :X – techno 2014-11-07 06:19:15