Desejo comparar a confiabilidade de diferentes sistemas RAID com unidades consumidoras (URE / bit = 1e-14) ou empresariais (URE / bit = 1e-15). A fórmula para ter a probabilidade de êxito de uma reconstrução (ignorando problemas mecânicos, que levarei em consideração mais adiante) é simples:
error_probability = 1 - (1-per_bit_error_rate) ^ bit_read
É importante lembrar que esta é a probabilidade de obter pelo menos um URE, não necessariamente apenas um.
Vamos supor que queremos um espaço útil de 6 TB. Podemos obtê-lo com:
RAID1 com 1 + 1 discos de 6 TB cada. Durante a reconstrução, lemos novamente 1 disco de 6 TB e o risco é: 1- (1-1e-14) ^ (6e12 * 8) = 38% para consumidor ou 4,7% para unidades empresariais.
RAID10 com 2 + 2 discos de 3 TB cada. Durante a reconstrução, lemos apenas 1 disco de 3 TB (aquele emparelhado com o que falhou!) E o risco é menor: 1- (1-1e-14) ^ (3e12 * 8) = 21% para o consumidor ou 2,4% para unidades corporativas.
RAID5 / RAID Z1 com 2 + 1 discos de 3 TB cada. Durante a reconstrução, lemos novamente 2 discos de 3 TB cada e o risco é: 1- (1-1e-14) ^ (2 * 3e12 * 8) = 38% para consumidor ou 4,7% ou unidades corporativas.
RAID5 / RAID Z1 com 3 + 1 discos de 2 TB cada (geralmente usado por usuários de produtos SOHO como Synologys). Durante a reconstrução, lemos novamente três discos de 2 TB cada e o risco é: 1- (1-1e-14) ^ (3 * 2e12 * 8) = 38% para consumidor ou 4,7% ou unidades corporativas.
Calcular o erro para tolerância em disco único é fácil, mais difícil é calcular a probabilidade com sistemas tolerantes a falhas em vários discos (RAID6 / Z2, RAIDZ3).
Se apenas o primeiro disco for usado para reconstrução e o segundo for lido novamente desde o início no caso ou em um URE, a probabilidade de erro será calculada acima da raiz quadrada (14,5% para o consumidor RAID5 2 + 1, 4,5% para o consumidor RAID1 1 + 2). No entanto, suponho (pelo menos no ZFS que possui somas de verificação completas!) Que o segundo disco de paridade / disponível seja lido somente onde for necessário, o que significa que são necessários apenas alguns setores: quantos UREs podem acontecer no primeiro disco? poucas, caso contrário, a probabilidade de erro para sistemas de tolerância de disco único dispararia ainda mais do que eu calculei.
Se eu estiver correto, um segundo disco de paridade praticamente reduziria o risco a valores extremamente baixos.
Pergunta à parte, é importante ter em mente que os fabricantes aumentam a probabilidade de URE para unidades de classe de consumidor por razões de marketing (vendem mais unidades de classe empresarial); portanto, espera-se que até os HDDs de classe de consumidor atinjam 1E-15 URE / bit de leitura .
Alguns dados: http://www.high-rely.com/hr_66/blog/why-raid-5-stops-working-in-2009-not/
Os valores que eu forneci entre parênteses (unidades corporativas), portanto, também se aplicam realisticamente às unidades consumidoras. E as unidades empresariais reais têm uma confiabilidade ainda mais alta (URE / bit = 1e-16).
Em relação à probabilidade de falhas mecânicas, elas são proporcionais ao número de discos e proporcional ao tempo necessário para a reconstrução.