什麼是raid的background initialization?

http://blog.sina.com.cn/s/blog_77e22d0e0100rbjf.html

學校2007買了一臺服務器聯想R350G6,機架式4U。帶有六個硬盤位,當時手上有7塊硬盤,三塊原配的73G 15kSAS 硬盤,四塊希捷320G 7200.10,於是兩塊SAS組成Raid 1做系統盤和數據盤。四塊希捷做Raid5,得到約900G的容量。
 

  到了2010年10月,服務器空間捉襟見肘,於是打報告校申請購買5塊WD 1T 32MB藍盤,其中四塊用來替換希捷320,多出的一塊裝在另外一臺服務器上做轉移備份之用。更換過程順利,先刪除原來有的第二組陣列,然後卸下硬盤,換 成新硬盤裝入托架再插入服務器,重建陣列,然後分區格式化。之後開始將數據通過FTP傳回。意外發現磁盤性能極不穩定,文件傳輸非常慢,速度只有幾百 KB/s,那要傳到猴年馬月呀。用HD-speed測試硬盤性能,最好時能突破240MB/s,但是最差的時候只有4MB/s,起伏非常大。懷疑硬盤有故 障,卸下重做陣列。結果一不小心把第一組陣列一併刪除了,還好之前有備份,不然真的是一夜回到解放前。
    於是放心開始做實驗了,測試了n種方法,更改了Raid的設置,比如磁盤緩衝策略,IO端口策略,區塊大小,等等不同的組合一一作了實驗,每次裝好發現問 題依舊。直到有一次設置成端IO口緩衝的時候,發現性能有所提升,以爲大功告成了,結果數據拷了200G又出現磁盤性能大幅度下降,測試讀寫速度降至幾百 KB/S。這回沒轍,乾脆連把當初的備用磁盤換上,做成兩個Raid5陣列來對比,看看是哪裏的問題。結果發現第一組三個73G 15K SAS性能相當穩定,可是第二組三個1T的硬盤性能卻非常不穩定。
重新盯着Raid陣列的設置項目,看到了64K簇,我記得有討論過現在的硬盤扇區是512B,最近鬧得很火的4K扇區,莫非這也有關係嗎?於是百度了關鍵 詞“64k 簇”,找到一些硬盤資料,比較有趣,windows默認是4K簇,如果設置更大的簇能改善磁盤大文件的連續讀寫性能。於是重新格式,格式化的時候發現如果 選了64K簇的話,Windows自帶的NTFS磁盤壓縮功能就失效了,這是個很有趣得問題。最後眼睛落在最角落的一個選項“background initialization”這個選項是enable。不是很明白,於是去查百度關鍵詞“Raid 5 初始化”,結果有了新發現了,原來Raid陣列是要初始化的,以前硬盤容量小,初始化很快就完成了,現在容量大了,初始化要耗費好幾天,有個網友報告說他 的5塊500組成的Raid 5陣列初始化超過10個小時。繼續查下去,找到一篇講解關於Raid 5背景初始化的文章,因爲Raid初始化的時間比較長,它需要將整個硬盤進行校驗,相當於所有的盤低格一次,所耗費的時間太長,於是廠家就採用一項技術, 叫背景初始化,這樣建好Raid陣列後不必等待初始化完成就可以開始使用,比如分區和格式化,但是系統仍然在後臺檢查磁盤,這時候硬盤IO操作非常頻繁, 從而導致磁盤性能低下。
     看到這裏,於是明白了大概了,也就是說,我要麼等上十幾個小時等系統完成初始化,要麼忍受低下的磁盤性能,等過一段時間磁盤整列初始化完成。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章