瀏覽單個文章
vxr
Elite Member
 
vxr的大頭照
 

加入日期: May 2002
您的住址: 地球的上面..
文章: 5,854
Exclamation

引用:
作者tbsky
感謝 vxr 兄的回覆。您的意思是 BGI 其實非必須的就是了,只是如果硬碟多了些,那麼 LSI 預設就會啟動 BGI, 反之就讓它就這麼用了...

BGI的目的除了同步parity block...
另外一個就是最佳化parity block..
因為RAID f/w會重新排列parity block..
對於寫入是有幫助的..
這可以避免RAID f/w浪費更多時間去計算parity..
但這個前提是..
已存在資料的VD...

如果之前定期有做CC..
然後將VD遷移到另一個RAID controller..
那這個幫助就不大(LSI對於從遷移過來的parity RAID會操作BGI, 這是基於可靠性的保證)...
因為CC也是一樣的效果...

那對於一個新的VD為什麼會需要BGI, 這會是另一種情況..
for example:
假設有一個案例..
有8顆PD 3TB組成一個R6 VD..
已經過了一次BGI..
排程一個月操作一次CC, 一個禮拜操作一次PR..
LSI RAID controller有串接一個SAS expander...

經過了一段時間, 打算進行對容量上的擴充...
另外增加了24顆4TB PD組成另外一個R6, 將先前VD(3TB PD x8)上的資料全部遷移過去..
這些3TB PD x8被改配置在其他用途...
3TB PD x2作為特殊的EHSP( EHSP是LSI特殊的HSP設計)
3TB PD x6建立R5用作在某種定期備份用途...

這時BGI可能是需要的, 幾個原因:
1. 最佳化parity block
2. 這些3TB PD先前存在了VD的parity block, 這意味著這些存在的parity block會干擾到重新建立的VD

舊的VD的parity block干擾到新建立的VD將會影響資料可靠性及安全性...
為了資料可靠性以及避免管理人員的疏失或著慵懶...
預設情況下會試圖操作BGI最佳化parity block..
這意味著先前存在的parity block都會被RAID f/w "試圖" 重寫掉...
保持資料的可靠性以及一致性...

BGI是因為Fast Init.才需要的..
因為Fast Init.只會清掉header...
只有浪費時間的Full Init.會完全重新計算parity block...
Full Init.會徹底清空(洗掉)先前存在的parity block...
以及會重新初始化NVRAM紀載的BBT(Bad Block Table)紀錄...

當然! 改善資料可靠性以及安全性的重點並不是這些RAID特徵..
因為這都是基本到不行的必備條件...
重點在於RAID製造商針對效能, 安全性, 可靠性以及一致性改進等額外提供的 "附加價值功能"...

比較麻煩的是對於一般資訊人員來說, 這些額外附加功能的相關資訊並不透明...
舊 2014-07-22, 06:20 PM #13
回應時引用此文章
vxr離線中