RAID, ou Redundant Array of Independent Disks (Matriz Redundante de Discos Independentes), é a combinação de vários discos rígidos físicos para que apareçam e atuem como um único disco virtual/lógico. Há várias maneiras de fazer isso, chamadas de “níveis”. Assim, saiba o que é e como funciona a RAID no artigo a seguir.
A Techopedia explica
Alguns níveis de RAID, como RAID 1 ou RAID 5, são comumente implementados, embora haja um debate constante sobre qual nível funciona melhor e em quais circunstâncias.
Níveis de RAID como 2, 3 e 4 raramente são implementados por vários motivos, e o 7 é uma implementação proprietária.
Se você quiser proteger seus dados contra falhas de hardware, um nível de RAID que ofereça redundância por meio de espelhamento ou paridade é obrigatório.
É realmente triste quando uma unidade isolada ou um array RAID 0 com striped/sem paridade sofre uma pane. recuperação geralmente é possível, mas é muito cara.
O RAID com espelhamento ou paridade também permite que você continue trabalhando até que a unidade defeituosa seja substituída. Isso pode lhe poupar muito dinheiro.
Os níveis de RAID que aumentam a taxa de transferência sustentada (o acesso aleatório geralmente sofre um pouco em qualquer configuração de RAID) por meio de striping ou distribuição de dados em vários discos também podem ser muito vantajosos.
Eles permitem que você aproveite a tecnologia de armazenamento mais antiga e mais lenta, como discos rígidos de 250 MBps ou até mesmo SSDs SATA de 550 MBps, para um armazenamento que pode transmitir grandes quantidades de dados com muito mais rapidez. Já vimos caixas NAS pequenas de 4 compartimentos ultrapassarem 1 GBps com striping.
RAID de hardware vs. RAID de software
O RAID por hardware é implementado por meio de controladores dedicados (HBAs ou Host Bus Adapters), enquanto o RAID por software é implementado por meio de um sistema operacional que usa CPUs normais.
Você pode pensar que a maioria das caixas NAS são RAID de hardware. Na verdade, é mais frequente que o RAID de software seja implementado pelo sistema operacional que também fornece as outras funcionalidades. É por isso que as caixas NAS atuais são tão versáteis.
Em geral, o sistema operacional é o Linux nas caixas para usuários finais, e o FreeBSD ou outras variantes do UNIX que executam sistemas de arquivos como o ZFS ou o OpenZFS entram em ação quando se atinge o nível de negócios maiores ou corporativos.
O RAID por software é mais fácil de ser implementado, atualizado e aprimorado, mas os controladores de hardware dedicados geralmente têm uma vantagem em termos de velocidade, facilidade de implementação e foco geral nas tarefas.
Níveis de RAID
Aqui, descrevemos os vários níveis de RAID, do básico ao não tão básico, do lento ao rápido e do seguro ao não tão seguro.
Observe que a capacidade utilizável mostrada em cada texto explicativo é a porcentagem da capacidade bruta do disco que permanece disponível depois que o nível de RAID é implementado.
Por exemplo, dois discos rígidos de 12 TB no RAID 1 oferecem 24 TB de capacidade bruta, mas apenas 12 TB (50%) de capacidade utilizável.
JBOD (Just a Bunch of Disks – em Português, Apenas um Conjunto de Discos)
Embora não seja realmente um nível de RAID, o JBOD é comumente oferecido como uma opção em caixas de armazenamento com várias unidades. Isso significa que as unidades aparecem como uma unidade lógica e os dados são gravados em cascata ao longo da linha.
Quando o primeiro disco está cheio, os dados são gravados no próximo, e assim por diante.
É uma boa maneira de sentir que você não vai ficar sem espaço, mas não oferece redundância nem aumento de desempenho.
RAID 0 (Disco Striping)
O RAID 0 distribui os dados uniformemente entre os discos para melhorar drasticamente a taxa de transferência sustentada, mas sem os benefícios de segurança (ou a sobrecarga) de gravar informações de paridade ou espelhamento.
O RAID 0 é perigoso porque a falha de um disco faz com que todo o sistema caia. Quanto mais discos houver na matriz, maior será o número de pontos de falha.
Esse nível, a não ser que seja combinado com outros níveis de RAID, deve ser usado somente para operações de risco ou, se houver dados importantes envolvidos, para backups contínuos. A recuperação geralmente é possível, mas é muito cara.
RAID 1 (espelhamento de disco)
O RAID 1 está criando uma cópia exata de um disco em outro. Basicamente, os dados são gravados em todas as unidades ao mesmo tempo. Você pode ter quantos espelhos quiser, mas, normalmente, as unidades são emparelhadas.
Se um deles falhar, você ainda terá um disco funcional para trabalhar enquanto o disco com falha é substituído e a matriz é reconstruída (os dados existentes são copiados para a nova unidade).
Os espelhos RAID 1 são frequentemente combinados em outros níveis de RAID (RAID 10, etc.) para aumentar o desempenho e manter a redundância. A grande desvantagem do RAID 0 é que você perde metade da sua capacidade bruta.
RAID 1E (Espelhamento em faixas)
O RAID 1E está distribuindo um bloco de dados duplicado (espelhado) em uma unidade diferente em um conjunto de três ou mais. Não são as informações de paridade que você encontra em níveis como o 5, mas uma duplicata/espelhamento real dos dados.
O bloco de dados e o bloco espelho/duplicado podem estar em qualquer uma das unidades, desde que não seja a mesma. Como no RAID 1 simples, a capacidade utilizável é a metade da capacidade total.
RAID 2 (Bit striping com paridade e correção de erros)
Na prática, o RAID 2 tem se mostrado difícil e caro de implementar. Um controlador espalha os dados no nível de bits em vários discos rígidos com o código Hamming (correção linear de erros) usado para corrigir erros e fornecer bits de paridade.
O código de correção de erros (ECC) nos discos rígidos modernos eliminou em grande parte a necessidade de Hamming, mas ainda há um grande obstáculo técnico na sincronização dos eixos para operações de um único bit.
Além disso, como todos os fusos estão em ação para cada gravação, só é possível realizar uma operação de gravação por vez. Isso gera uma taxa de transferência sustentada muito rápida, mas um péssimo desempenho multitransacional (aleatório).
RAID 3 (Byte Striping com um único disco de paridade)
Assim como o RAID 2, o RAID 3 é outro nível que parece proporcionar um bom aumento de desempenho: bytes distribuídos em vários discos com todas as informações de paridade armazenadas em um disco separado.
Mas, novamente, foram necessários fusos sincronizados, e o desempenho é excelente para leituras e gravações sequenciais, mas fraco para operações de leitura e gravação multitarefa.
RAID 4 (Distribuição de blocos com um único disco de paridade)
O RAID 4 é muito parecido com o RAID 5, pois distribui os dados em nível de bloco em vários discos (pelo menos três). Entretanto, ao contrário do RAID 5, que distribui informações de paridade em todos os discos da matriz, a paridade do RAID 4 é gravada em um único disco. O único canal para paridade pode ser um gargalo sob cargas pesadas.
RAID 5 (Striping de blocos com paridade distribuída)
O RAID 5 requer pelo menos três unidades e é semelhante ao RAID 0, pois distribui uniformemente os dados em nível de bloco em vários discos.
No entanto, diferentemente de seu primo com vida útil no limite, ele também distribui informações de paridade em todas as unidades da matriz para redundância de dados.
Os blocos de paridade nunca residem no disco que contém os dados que eles protegem. O RAID 5 é o nível mais baixo de RAID a usar paridade distribuída. O RAID 5 pode suportar a perda de uma unidade.
RAID 5E (RAID 5 com Hot Spare distribuído)
O E em RAID 5E significa estendido ou aprimorado, dependendo de com quem você falar. Estendido/aprimorado, como em um disco extra, é incluído na matriz como um hot spare, mas que na verdade funciona como parte da matriz.
A capacidade sobressalente representada pelo disco extra é distribuída por todos os discos do conjunto em grandes áreas contíguas no final dos dados de cada disco.
O número mínimo de discos é quatro no 5E, mas, fora isso, é um striping RAID 5 com paridade distribuída.
RAID 5EE (RAID 5 com Hot Spare distribuído/intercalado)
O RAID 5EE é igual ao 5E, mas o espaço vazio que o “hot spare” representa é intercalado com o restante dos dados, e não em grandes blocos contíguos no final dos dados em cada unidade. Diz-se que o tempo de recuperação é mais rápido do que com o RAID 5E.
RAID 6 (Distribuição de blocos com paridade dupla)
O RAID 6 é um primo próximo do RAID 5, pois as informações de dados e paridade são distribuídas em faixas por todos os discos da matriz. Entretanto, o RAID 6 distribui o dobro de informações de paridade – dois blocos para cada bloco de dados, em vez de um para o RAID 5.
O bloco de dados original, o bloco de paridade um e o bloco de paridade dois residem separadamente.
O RAID 6 requer um mínimo de 4 unidades e pode suportar a perda de duas unidades e continuar funcionando. O RAID 5 normal pode tolerar apenas uma falha em uma única unidade.
RAID 7 (Proprietário)
O RAID 7 não é um dos níveis de RAID padrão, mas uma solução proprietária que integra uma CPU e um controlador oferecido pela Storage Computer Corporation (atualmente extinta). O RAID 7 utiliza os recursos do RAID 3 e do RAID 4 e acrescenta os benefícios do armazenamento em cache.
RAID 10 (RAID 1 + 0)
O RAID 10 é uma combinação de espelhamento RAID 1 e striping RAID 0. Também é chamado de 1 + 0, e também já o vimos como 0 + 1. Os dados são distribuídos em faixas no formato RAID 0 em um ou mais espelhos RAID 1.
O RAID 10 pode suportar a perda de duas unidades, desde que ambas não estejam no mesmo par espelhado.
RAID 50 (RAID 5 + 0)
O RAID 50 é um sistema de striping RAID 0 (sem paridade) em dois ou mais sistemas RAID 5. As matrizes RAID 5 fornecem a paridade e a redundância de dados que estão faltando no nível 0. Você também poderia aproveitar os sistemas 5E ou 5EE.
O RAID 50 é mais rápido que o RAID 5, mas requer um mínimo de seis discos. Assim como no RAID 5, o armazenamento utilizável é 66% da capacidade total.
RAID 60 (RAID 6 + 0)
O RAID 60 é um RAID 0 com dados distribuídos em duas ou mais sub-arranjos de paridade dupla do RAID 6.
Ele oferece o dobro da redundância de dados do RAID 50, mas, obviamente, requer mais discos: quatro por matriz RAID 6 para um total mínimo de oito.
Ele é mais rápido do que um único RAID 6. O grau de velocidade depende de sua compilação e do número de subarranjos RAID 6. A capacidade utilizável é 50% da capacidade total.
RAID 100 (RAID 10+0)
Esse é o RAID 0 de empilhamento duplo, ou seja, o striping no estilo RAID 0 sem paridade em vários arrays RAID 10, que por sua vez fazem o striping de dados no estilo RAID 0 em vários conjuntos espelhados RAID 1. Ufa!
Obviamente, com tantos canais, o RAID 100 pode ser muito rápido e ainda manter a redundância do espelhamento. Ele requer no mínimo oito unidades.