Sql-Server

RAID10 中的磁碟數量對於 Microsoft SQL 伺服器的塊大小是否重要?

  • April 27, 2015

我們計劃部署 Microsoft SQL Server 並將數據庫儲存在 RAID10 (RAID1+0) 塊級儲存上。

資料來源:維基百科

我在陣列中放入多少驅動器以實現最佳操作是否重要?是四個,如上圖所示,還是六個、八個或十個?

有人告訴我,我需要正確數量的驅動器才能為 MSSQL 優化塊大小。

給出的範例是具有六個驅動器 (D1–D6) 的 RAID10 …

RAID 0

├ RAID1 (D1; D2)

├ RAID1 (D3; D4)

RAID1 (D5; D6)

… 會導致問題,因為 64 kB 的塊將被分成三個,結果導致必須在每個 RAID1 子陣列上寫入大小為 0.33% 的塊。

這只是進一步澄清我的問題的一個例子。那麼,我在陣列中放入多少驅動器以實現最佳操作是否重要?

請用參考資料和解釋來支持你的答案。

MSSql Server 的塊大小應為 64kb,以獲得最佳性能,如簡單的Google 搜尋所述。

關於驅動器,RAID 10 至少需要 4 個驅動器(查看您自己連結的圖像),然後您可以將 2 對擴展至您的內心內容(再次查看您連結的圖像)。但是請記住,一旦系統在使用中,用更多磁碟升級它是一件很痛苦的事情,所以一定要確保根據需要放入盡可能多的磁碟!

添加:

您的問題仍然是相同的答案,在您的 RAID 上具有 64kB 的塊大小,這意味著它將寫入 64kB 的塊。MSSql 執行 64kB 大小的文件,這意味著它將遞歸儲存塊。所以說你寫了兩個block,64kB會儲存到D1,然後鏡像到D2,然後它會再寫一個block到D3,然後鏡像到D4。它絕不會嘗試拆分塊,如果您將塊大小設置為 8kB,就會發生這種情況。然後它將塊分成 8 塊,因此塊 1、4、7 將進入 D1,塊 2、5、8 將進入 D3,而 3、6 將進入 D5。這當然會相應地反映。

引用自:https://serverfault.com/questions/685787