SQL Server效能調校系列(7)–RAID

來源:互聯網
上載者:User

一: RAID簡介

RAID(Redundant Array of Independent Disk 獨立冗餘磁碟陣列)是一項資料保護策略.

 

二: RAID的幾種常用層級

 

1. RAID 0:

通過並行讀取來提高資料I/O, 讀取操作效率很高, 但是不提供資料容錯及保護. 不推薦作為SQL Server使用.

 

2. RAID 1:

鏡像保護,有兩個磁碟機,一個做主磁碟機,一個做鏡像, 所以是實際需要兩倍的磁碟機,第二個所為冗餘使用. 使用RAID 1我們的儲存容量應該是(n*s/2)。

一次寫操作寫入到兩個磁碟, 所以雖寫入速度會稍微有影響, 但是讀取速度幾乎是大多數情況下的兩倍. 因為在讀取操作過程中磁碟機可以並行地進行訪問,從而提高了輸送量。RAID 1限制於兩個磁碟機。

 

3. RAID 5:

帶校正的磁碟條帶。在這種類型的RAID中,資料以複雜條帶的形式寫入到陣列中的所有磁碟機中,同時所有磁碟機中都有分布數校正塊。這樣RAID 5就可能使用三個或者更多磁碟組成的任意大小的陣列,只犧牲相當於一個磁碟的儲存容量用於校正。但是這種校正是分布式的,並不單獨存在於任何一個物理磁碟中.

RAID 5由於在大型陣列中犧牲的儲存容量較少,所以它具有成本效益的特點,從而被人們所廣泛使用。與鏡像不同的是,帶有校正的條帶要求必須在磁碟之間進行針對每個寫入條帶的計算,這造成了一部分的開銷。因此,輸送量並不總是一個容易計算的項目,它在很大程度上取決於系統在做校正計算時候的計算能力。

計算RAID 5的容量非常簡單:就是((n-1)*s)。RAID 5陣列可以避免這列中任何單個磁碟的丟失.

 

對RAID5的每一次寫操作, 都會涉及到多個讀用於計算並且儲存. 對SQL Server有很多的寫操作,並且要求很高效率的時, RAID 5並不是一個很好的選擇.

 

4. RAID 6

帶雙重校正的磁碟條帶。RAID 6與RAID 5非常相似,但它的每個條帶使用兩個校正塊,而不是一個,這加強了應對磁碟故障的保護能力。

RAID 6是RAID家族中的新成員。RAID 6是其他幾個RAID類型實現標準化幾年之後增加的。RAID 6比較特殊,因為它可以承受陣列中任意兩個磁碟機的故障,同時防止資料丟失。但是為了配合額外的冗餘度,RAID 6陣列需要犧牲陣列中相當於兩個磁碟機的容量,並要求真列中最少有四個磁碟機。RAID 6的容量可以用((n-2)*s)來計算。

 

5. RAID 10:

帶條帶的鏡像。從技術上來說,RAID 10是一種混合的RAID,包括存在於一個非校正條帶(RAID 0)中的一對RAID鏡像。

當一個陣列中只有兩個磁碟機的時候,很多廠商會稱其為RAID 10(或者RAID 10+),但從技術上來說這應該是RAID 1,因為陣列中至少有四個磁碟機才會發生條帶化。對於RAID 10來說,磁碟機必須是一對一對添加的,因此陣列中的磁碟機數量只可能是偶數。

RAID 10可以在丟失近半數磁碟機組的情況下正常運轉,同時最多隻能承受每個磁碟機中一個磁碟機發生故障或者丟失。RAID 10不包含校正計算,這使得它相對RAID 5和RAID 6來說具有一定的效能優勢,而且陣列對計算能力的要求也更低。RAID 10提供了超過任何一種常見類型RAID的讀取效能,因為在讀取操作中陣列中的所有磁碟機都可同時使用。但是RAID 10的寫入效能要低很多。RAID 10的容量計算方法和RAID 1相同,都是(n*s/2)。

 

 

RAID效能比較:

 

讀效率: 因為是並行讀取, 讀取效率都很高.

寫效率: RAID 0 > RAID 1 > RAID 10 > RAID 5

磁碟利用率: RAID 0 > RAID 5 > RAID 1 = RAID 10

容錯能力:  RAID 10 = RAID 1 > RAID 5 > RAID 0

作為SQL Server 的DB Server建議使用RAID 1 或RAID10.

 

 

三: RAID與SQL Server

 

DB server physical disk design with separate RAID volumes for data, log, tempdb and backup files.

磁碟架構:

C:  OS [要求很好的資料讀寫效率, 並且有很強的容錯能力, 提供資料保護]

D: 做RAID10, 儲存DB資料檔案 [要求讀的效率高, 寫效率比較低一些, 容錯能力要強,如果資料檔案很大, 要求節約磁碟空間]

E: 做RAID1,  儲存DB記錄檔 [在DB運行過程中, 日誌讀寫比較頻繁, 需要很高的資料讀寫效率]

F: 做RAID10, 儲存資料庫的tempdb [存放臨時資料庫]

G(可選): 做RAID1, 資料備份,建議資料備份在遠端

 

SSD硬碟:SSD的英文全稱是Solid State Disk/Drive, 中文翻譯為固態硬碟. 可以廣泛應用於伺服器、台式機、筆記本、行動裝置、遊戲機等, 加速啟動, 提高效能, 同時降低功耗.

優點:

  • 速度快(高I/O).
  • 耐用防震
  • 無噪音
  • 重量輕
  • SQL Server搭配SSD硬碟可以取得很好的I/O效能

缺點:

  • 價格高,容量小,做RAID會進一步損失容量, 所以性價比不高. 對於不考慮價格的公司就另當別論.
  • 技術還不是太成熟

 

四: 總結

針對不同的功能,建立不同的RAID架構可以提高資料效率和利用率.

 

(以上只是自己對RAID的一點淺顯的理解,如有錯誤或者不當的地方,歡迎提出指正. 謝謝!)


>>>SQL Server效能調校系列入口地址

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.