SQL Server備份屬於I/O密集型操作。簡單來說,你需要首先進行讀操作,然後再寫整個資料庫的內容。下面是幾個可以改善I/O輸送量的步驟:
向儘可能多的磁碟做寫操作
使用儘可能多的磁碟機來分離負載量,可以是由許多塊盤組成的RAID陣列或者是多個RAID陣列。
從儘可能多塊磁碟做讀操作
如果你的資料庫跨多塊磁碟分布,你可以降低I/O瓶頸。
利用分離磁碟做讀操作和寫操作
對不同的磁碟組做讀操作和寫操作有助於增加I/O輸送量。
RAID配置
對讀操作和寫操作儘可能使用速度最快的RAID配置。例如,RAID 5比較慢,因為它需要對磁碟有額外的寫操作。RAID 0對寫操作來說是最快的,但是它不提供冗餘。可以考慮使用RAID 1+0:1和0代表鏡像式(1)和條帶式(0),因此你可以有一個資料集鏡像,而且你可以條帶式跨多個鏡像組合來擷取額外的I/O輸送量。既然備份首先要從資料庫讀,然後向備份檔案寫,那麼寫操作的優勢在儲存備份檔案的磁碟上是顯而易見的。
控制器
利用不同的控制器和(或者)通道來增加I/O輸送量。另外,要使用你能買得起的最好的控制器。在購買控制器時,你應該查看連接埠數量,支援的最大磁碟機數量,緩衝大小,電池備份和SCSI協議支援情況。要跨多個控制器或通道分離讀操作和寫操作活動。
在本地寫資料
要寫本地磁碟,而不要向網路連接的儲存做寫操作。如果資料被寫到直接連接的存放裝置,你可以排除掉伺服器外部可能引起使備份變慢時間變長的其它因素。
寫多個裝置
除了讀寫多塊磁碟,可以利用儘可能多的線程來增加輸送量。這一點可以通過利用企業管理器並選擇多個輸出檔案或者通過利用T-SQL並在備份命令中包含多個檔案來做到。你還可以通過寫不同磁碟子系統來進一步增加輸送量。
壓縮備份
利用第三方工具壓縮你的備份輸出。這樣一來,你可以降低備份檔案整個大小的90%,並將備份時間減半。因為大部分資料在資料庫中是文本資料,因此它是高度可壓縮的。
把備份寫到磁碟
永遠要把備份寫到磁碟上,不要直接寫到其他類型的介質上;在直接寫到記憶體之後,磁碟備份是下一個最快的選擇。
快速磁碟機
使用你能得到的最快的磁碟機。SCSI磁碟機還是要比IDE更快,能達到高達15k RPM的速度。