瀏覽單個文章
twu2
Power Member
 

加入日期: Jan 2002
您的住址: Taipei
文章: 661
引用:
作者mains
但我覺得這跟RAID 1的原理有矛盾的地方
損壞的只要不是同一部份應該就不會有問題才對吧??


不會矛盾. 因為 controller 是用 disk (or virtual disk) 為單位來看. 它並不會知道可以拿 A 好的那部份加上 B 好的那部份來合成一個正常的部份.

以 4 個硬碟做 raid 1+0 與 raid 0+1 來看.
壞 1 個硬碟時都不會有問題.
壞 3 個或 4 個時, 都一樣資料不見.
差別只有壞 2 個的時候.

raid 1+0:
a1, a2 raid 1 => disk A
b1, b2 raid 1 => disk B
A, B => raid 0
1. 壞 a1, a2 => disk A 壞, disk B 正常, raid 0 有一個壞了, 資料不見
2. 壞 b1, b2 => disk A 正常, disk B 壞, raid 0 有一個壞了, 資料不見
3. 壞 a1, b1 => disk A 正常 (raid 1 可由 a2 取得資料), disk B 正常 (raid 1 可由 b2 取得資料), 資料正常
4. 壞 a1, b2 => disk A 正常 (raid 1 可由 a2 取得資料), disk B 正常 (raid 1 可由 b1 取得資料), 資料正常
5. 壞 a2, b1 => disk A 正常 (raid 1 可由 a1 取得資料), disk B 正常 (raid 1 可由 b2 取得資料), 資料正常
6. 壞 a2, b2 => disk A 正常 (raid 1 可由 a1 取得資料), disk B 正常 (raid 1 可由 b1 取得資料), 資料正常
有 4/6 的機會資料是正常的.

raid 0+1:
a1 a2 raid 0 => disk A
b1 b2 raid 0 => disk B
A, B => raid 1
1. 壞 a1, a2 => disk A 壞, disk B 正常, 資料正常 (raid 1 可由 disk B 得到資料)
2. 壞 b1, b2 => disk A 正常, disk B 壞, 資料正常 (raid 1 可由 disk A 得到資料)
3. 壞 a1, b1 => disk A 壞, disk B 壞, 資料不見
4. 壞 a1, b2 => disk A 壞, disk B 壞, 資料不見
5. 壞 a2, b1 => disk A 壞, disk B 壞, 資料不見
6. 壞 a2, b2 => disk A 壞, disk B 壞, 資料不見
有 2/6 的機會資料是正常的.

通常會認為一樣, 是誤以為在 raid 0+1 時, a1, b2 壞掉了, 可以由 a2, b1 得到完整資料.
如果是這樣想的話, 在 raid 1 時, 兩個硬碟都壞了, 是不是只要壞掉的地方不是同一個磁區, raid 就應該可以由另一個讀出呢?
實際上, 只要壞任何一個地方, raid controller 就認為那整個都有問題了.
__________________

Tommy 碎碎念...
舊 2006-06-22, 08:25 AM #8
回應時引用此文章
twu2離線中