1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-1
RAID – Redundat Arrays of Inexpensive Disks
• Criado em alternativa para os discos grandes e caros.
– Justificativa:
• Substituindo discos grandes por muitos discos pequenos, o desempenho melhoraria mais cabeças de leitura.
• Vantagens no custo, consumo e espaço ocupado.
– Necessidade de redundância, pois muitos mais discos menores tinham menor confiabilidade utilização de um array
redundante.
– Espalhamento dos dados nos vários discos é chamado de striping.
1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-3
RAID 0 – Sem Redundância
• Um array de discos sem redundância (RAID 0) tem menor custo que outras organizações de RAID porque não emprega a redundância. Este esquema oferece um desempenho melhor, pois não necessita atualizar as informações
redundantes. São utilizados em super-computadores onde o desempenho e a capacidade são as principais características.
Os blocos sequenciais são escritos da seguinte maneira:
•O tamanho do bloco, conhecido como “stripe width”, varia com a implementação,
mas tem, pelo menos, o tamanho de uma setor. Todos os discos podem ser lidos em paralelo.
•RAID 0 Nomenclatura errada, pois não há redundância.
RAID 0 – Sem Redundância
1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-5
RAID 1 – Espelhamento
• A solução chamada de espelhamento (ou “shadowing”), usa duas vezes mais o número de discos usados em um sistema sem
redundância. Um dado escrito em um disco é também escrito no disco redundante, tendo então, duas cópias de da informação. Quando uma leitura de um dado é necessária, o disco de menor fila, menor seek time e menor latência rotacional é escolhido. Se um disco falha, a outra cópia é usada.
• Espelhamento é frequentemente usado em aplicações de banco, onde a disponibilidade e o tempo de transação são mais importantes que a eficiência de armazenamento.
RAID 2 – Código de Correção de Erros
• Sistemas de memória devem permitir a correção de falhas dos componentes, com menos custos que o espelhamento. O código de Hamming é utilizado para este tipo de correção
1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-7
RAID 3 – Paridade Intercalada por BIT
• Em vez de ter uma cópia completa dos dados originais para cada disco, só necessitamos acrescentar informações redundantes suficientes para restaura a informação perdida em uma falha
• Um disco extra é usado para manter as informações de verificação.
• Usado em aplicações com grande conjunto de dados (p.ex. multimídia)
• Paridade esquema onde o disco redundante tem a soma dos dados
dos outros discos. Quando subtrai todos os dados nos discos bons do disco de paridade, a informação restante deverá ser a informação que falta
RAID 3 – Paridade Intercalada por BIT
• Exemplo: Suponha que temos 4 discos de dados e um disco de paridade com:
Disk 0 Disk 1 Disk 2 Disk 3 Parity
0 1 1 1 1
• O bit de paridade é um XOR dos quatro bits de dados, que pode ser calculado como 0 se a soma é para e 1 se for ímpar. Aqui a soma é 3, então o bit de paridade é 1.
• Se tentarmos ler este dado e encontrarmos que o disco 2 deu um erro de leitura, podemos reconstruir o disco 2 com o XOR de todos
1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-9
RAID 4 – Paridade intercalado por blocos
• Usa a mesma razão de discos de dados e de verificação do RAID 3, mas acessam dados de forma diferente. A paridade é armazenada como blocos e associada a um conjunto de bloco de dados.
RAID 4 – Paridade intercalado por blocos
• No RAID 3, cada acesso vai para todos os discos. Nos níveis 4 a 6, como a informação de detecção de erro em cada setor é verificada nos
1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-11
RAID 5 – Paridade distribuída em nível de bloco
• Paridade distribuída em nível e bloco elimina o gargalo do disco de paridade presente no RAID 4 pois distribui a paridade uniformemente para todos os discos.
RAID 5 – Paridade distribuída em nível de bloco
•O método usado para distribuição da paridade pode afetar o desempenho do array de disco •A figura abaixo ilustra a distribuição de paridade.•Cada quadrado corresponde a uma unidade stripe. Cada coluna de quadrados é um disco. •P0 calcula a paridade sobre as unidades de stripe 0,1,2 e 3; P1 sobre as unidades de stripe
4, 5, 6, e 7; e assim por diante.
•Vantegem desta distribuição é que o acesso unidades de stripe nunca é feito
1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-13
RAID 6 – Redundância P + Q
• Os esquemas baseados em paridade protegem contra uma única falha auto-identificável. Quando uma correção de uma única falha não é suficiente, a paridade pode ser generalizada para ter um segundo cálculo sobre os dados e outro disco de verificação. Esse segundo bloco de verificação permite a recuperação de uma
segunda falha. Portanto o overhead de armazenamento é o dobro do RAID 5.
• Um esquema, denominado redundância P+Q usa código Reed-Solomon para proteger contra mais de duas falhas em discos.
RAID 10
• RAID 10 não foi mencioanado no artigo original de 1988 que definiu o RAID 1 até o RAID 5. O termo RAID 10 é usado para definir uma combinação do RAID
1998 Morgan Kaufmann Publishers
Ricardo Pannain Ch8-15
• Sistemas RAID necessitam de Tape Backups
• RAID não protege de múltiplas falhas, isto significa que o array de discos não é totalmente redundante.
• Backups regulares permitem recuperação de dados perdidos, que não está relacionado com falhas (erros de hardware, software e “manware”).