RAID Scrubbing / Data Scrubbing

最近因為追某個錯誤,追到了辦公室的 Synology NAS 上,才發現這個名詞:「RAID Scrubbing」,標準的叫法應該是「Data Scrubbing」,查了幾份文件 (1)(2) 之後,都說這是使用 RAID 時的必要的定期維護工作,還提到而家用硬碟建議每週都做一次,而資料中心用的 RAID 建議每月都做一次,不然可能會有資料遺失的風險?!

乍看之下我嚇了一跳,因為印象中我們從來沒做過這個動作,當時我立刻覺得公司的資料正陷入極高度的風險中,不過稍微看了一下 Wiki 上的介紹之後,發現 Dell 的 RAID card 本身就支援所謂的 patrol read 功能,效用等同於 Data Scrubbing,頓時讓我鬆了一口氣,但身為一個工程師, 就是要追根究底一下,不然還真不能百分百的放心,而且還可以藉此練一下肖喂:

  1. 關於 Dell 的 RAID card 部分:
    • 根據 Wiki 下方的註解,Dell PERC 6 或 PERC 6i 有個叫做 Patrol Read 的功能,效用相等於 Data Scrubbing
    • Dell 網站上也提到這功能預設是開啟的,而且每七天會跑一次
    • 對照一下正在使用的 Dell R720 (使用 PERC H710 RAID Card),在 BIOS 當中的確有這個選項,且預設值是 Auto,所以這裡算是可以安心了
      1
  2. 關於 Synology,還的確得要做 RAID Scrubbing,但是,這個動作要花費的時間真的非常久(不知道和 Soft RAID 有沒有直接關係),像我花了三天時間對一個 22TB 的 RAID 6 做,目前的進度也才 45.3%
    2

Dell 對於 Patrol Read 的說明上有個補充項目,意思是這功能不會對 SSD 執行,我猜想是 SSD 本身的控制器就已經自帶 error detection / error correction 的功能,所以就不用靠 Data scrubbing 這個動作來預防可能有硬碟壞軌或 RAID 寫入不完全的錯誤。