Tipos de RAID

RAID (Redundante Array of Independent Disks) é uma tecnologia utilizada para permitir maior resiliência e performance em discos e outros tipos de memórias secundárias. A proposta do RAID é a agregação de diversos dispositivos de memória não-volátil em uma única estrutura lógica. Os dados são distribuídos entre os volumes, de forma que as operações sobre os dados podem ocorrer de forma simultânea. Ou seja, é possível no caso de um RAID de discos rígidos com que sejam lidos diferentes dados de diferentes discos ao mesmo tempo, já que cada disco possui seus mecanismos de leitura (cabeçote magnético de leitura).

Além dos dados em si, ao longo dos volumes são distribuídos dados de controle. Esses dados de controle no contexto do RAID são chamados de paridade. A partir dos dados de controle é possível com que dados sejam recuperados em caso de falha de um dos discos do conjunto.

Quando os dados são escritos ao longo dos discos essa técnica é chamada de striping. Justamente a técnica de striping que permite maior performance para operações de leitura. As operações de escrita não são melhoradas, já que essas continuam a ser sequenciais e apenas um único disco é utilizado por cada operação.

Existem diferentes níveis de RAID que determinam como o ambiente opera. Alguns níveis permitem melhoria de performance em detrimento da tolerância a falhas. Outros permitem obter tanto tolerância a falhas como aumento de performance. Alguns sistemas RAID permitem inclusive com que os discos sejam trocados “a quente” (hot-swapping). E quando isso ocorre os dados de paridade são reconstruídos no novo disco.

A tabela a seguir descreve os tipos de RAID e características:

Nível de RAID Atividade Nome
0 Dados são distribuídos entre os discos. Sem redundância ou paridade. Se um volume falhar todo o conteúdo desse é perdido. Possui ganho de performance para operações de leitura. Striping
1 Espelhamento de volumes. Os dados são escritos em dois discos ao mesmo tempo. Se um volume falhar o outro possui exatamente o mesmo conteúdo disponível. Mirroring
2 Dados são distribuídos entre todos os volumes em nível de bit. Dados de paridade são criados sobre o código de forma a identificar erros. Nesse nível podem ser utilizados até 39 discos, sendo 32 para armazenamento e 7 para recuperação em caso de erros. Atualmente não é mais utilizado. Hamming code parity
3 Dados são distribuídos entre todos os discos e dados de paridade são armazenados em um disco. Se um volume falhar é possível a construção desses a partir dos dados de paridade. Byte-level parity
4 Como o nível 3, exceto que paridade é criado em nível de blocos, e não a nível de bytes. Block-level parity
5 Dados são escritos em unidades de setores de disco em todos os discos. Paridade é escrito em todos os volumes de forma a não possuir ponto único de falha. Interleave parity
6 Similar ao nível 5 mas com tolerância de falha através do uso de um segundo conjunto de dados de paridade escritos em todos os volumes. Second parity data (ou double parity)
10 (0+1 ou 1+0) Dados são escritos simultaneamente e espalhados nos volumes e pode suportar múltiplos níveis de falhas. Striping and mirroring

 

 

Um comentário sobre “Tipos de RAID

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *