1. 程式人生 > >SqlBulkCopy效率低下原因分析

SqlBulkCopy效率低下原因分析

表數據 遇到 解決 數據庫 分析 mmap 現象 項目 bsp

看到標題 應該會奇怪 SqlBulkCopy 為什麽會效率低下

場景:接手項目 數據庫SQLSERVER2008R2, 目前有一張流水表單表數據超過4億,表中建有索引,有其他模塊對這個表進行查詢操作,無其他寫入操作,每天需要有將近100W的數據批量寫入

目前 用SqlBulkCopy 進行批量插入,發現奇怪的現象, 每次批量插入1W條 耗時將近6~10分鐘,之前有用過SqlBulkCopy批量插入47W也就6分鐘左右

原因不明

現在排除分表等其他優化的可能 由於業務原因 目前無法進行讀寫分離操作

現在考慮為何SqlBulkCopy效率會這樣慢

原因點:該表數據存量過大,已經超過億萬級,而且有幾組索引,索引不能刪除

通過配置了 SqlBulkCopy 的colummap 效率有所提升,但是不穩定 目前單次批量插入1W 依然超過了6分鐘

不知道其他博友 有沒有遇到過類似問題,歡迎提供解決思路

PS:什麽讀寫分離 分表的建議就不要提出了哈,因為業務原因 目前現狀不能做這個操作

SqlBulkCopy效率低下原因分析