From last couple of months my packages consuming more time to complete
as a scheduled job. In all my ssis packages i am truncating the data in sql
server then Bulk inserting data in those tables
我認爲過一段時間,你需要批量插入數據量將繼續採用這種設計成長?這也許可以解釋爲什麼工作會變得越來越慢。
Even I have lot of non clustered indexes on those tables. Do I need to drop all
indexes on those tables before executing bulk insert SSIS packages and once the
package is succeeded I have to create Non clustered indexes so that the
performance and time consuming constraint of the packages can be solved
這些索引肯定會減慢插入數據的速度。但是,它可能不僅僅是您的非聚集索引。根據用於組成聚集索引的列的值(即主鍵),聚集索引可能會減慢插入的速度。這可能取決於您所插入數據的順序,可能是可以控制的。
正如您已經突出顯示的那樣,您可以嘗試刪除並重新創建索引後插入。但是,您必須考慮重新創建索引所需的時間,並查看額外的時間是否會爲您帶來足夠的性能改進。
一般而言,我建議您首先記錄DTS每一步所花的時間,以確定哪一步最慢,然後決定如何改進。目前,沒有資料,你真的在黑暗中
1.雅數據已經從最近一個月的增長,但相同的包,需要6個小時完成作爲一項工作是在BIDS 2.5小時內完成,當我手動運行。我真的無法弄清楚爲什麼在這兩次運行之間會有如此巨大的差異。 – 2010-10-03 14:39:52
@Mohammed Mushtaq - 是否因爲時機?在您安排這項工作時,您是否檢查過數據庫中發生的其他活動/工作/交易/處理?別的什麼可能會鎖定行/表格的問題?或者它可能只是當時在數據庫中的負載。您是否曾嘗試在另一個時間/日期運行該工作以瞭解它是如何工作的? – InSane 2010-10-03 14:54:14
這是一臺新格式化的服務器,除了我的軟件包外沒有其他大型任務正在運行。雅我試圖在白天運行時遇到同樣的問題。因爲它在夜間運行,所以沒有任何負載點。因爲白天用戶使用這個服務器進行MIS報告。 – 2010-10-03 15:29:24