Níveis de RAID não padrão - Non-standard RAID levels

Embora todas as implementações de RAID difiram da especificação até certo ponto, algumas empresas e projetos de código aberto desenvolveram implementações de RAID não padrão que diferem substancialmente do padrão. Além disso, existem arquiteturas de unidade não RAID , fornecendo configurações de várias unidades de disco rígido não mencionadas por acrônimos RAID.

Paridade dupla

Diagrama de configuração de RAID-DP (paridade dupla)

Agora parte do RAID 6, a paridade dupla (às vezes conhecida como paridade diagonal da linha ) apresenta dois conjuntos de verificações de paridade , como o RAID tradicional 6. Diferentemente, o segundo conjunto não é outro conjunto de pontos no polinômio sobredefinido que caracteriza os dados. Em vez disso, a paridade dupla calcula a paridade extra em relação a um grupo diferente de blocos. Por exemplo, em nosso gráfico, RAID 5 e 6 consideram todos os blocos marcados com A para produzir um ou mais blocos de paridade. No entanto, é bastante fácil calcular a paridade em relação a vários grupos de blocos, pode-se calcular todos os blocos A e um grupo de blocos permutado.

RAID-DP

O RAID-DP é uma implementação de RAID proprietária da NetApp disponível apenas em sistemas ONTAP . O RAID DP implementa o RAID 4, exceto com um disco adicional que é usado para uma segunda paridade, por isso tem as mesmas características de falha de um RAID 6. A penalidade de desempenho do RAID-DP é normalmente inferior a 2% quando comparado a um RAID 4 semelhante configuração.

RAID 5E, RAID 5EE e RAID 6E

5E RAID, 5EE RAID, e 6E RAID (com o adicionado E pé para reforçada ) geralmente referem-se a variantes de RAID 5 ou 6 com um sistema integrado à peça de reposição da unidade, onde a unidade de reposição é uma parte activa do regime de rotação do bloco. Isso distribui E / S por todos os drives, incluindo o sobressalente, reduzindo assim a carga em cada drive, aumentando o desempenho. No entanto, ele impede o compartilhamento da unidade sobressalente entre vários arrays, o que ocasionalmente é desejável.

Intel Matrix RAID

Diagrama de uma configuração Intel Matrix RAID

Intel Matrix RAID (um recurso da Intel Rapid Storage Technology) é um recurso (não um nível RAID) presente no ICH6 R e subsequentes chipsets Southbridge da Intel, acessível e configurável através do utilitário de configuração RAID BIOS . Matrix RAID suporta apenas dois discos físicos ou tantos quanto o controlador suporta. A característica distintiva do Matrix RAID é que ele permite qualquer variedade de RAID 0, 1, 5 ou 10 volumes na matriz, para a qual uma parte controlável (e idêntica) de cada disco é alocada.

Como tal, um array RAID Matrix pode melhorar o desempenho e a integridade dos dados. Um exemplo prático disso seria usar um pequeno volume RAID 0 (distribuição) para o sistema operacional , programa e arquivos de paginação; um segundo maior volume RAID 1 (espelho) armazenaria dados críticos. Linux MD RAID também é capaz disso.

Linux MD RAID 10

O subsistema RAID de software fornecido pelo kernel Linux , chamado md , suporta a criação de matrizes RAID 1 + 0 clássicas (aninhadas) e matrizes RAID não padrão que usam um layout RAID de nível único com alguns recursos adicionais.

O layout "próximo" padrão, no qual cada pedaço é repetido n vezes em uma matriz de fração k -way, é equivalente ao arranjo RAID 10 padrão, mas não requer que n divida k uniformemente . Por exemplo, um layout n 2 em duas, três e quatro unidades seria semelhante a:

2 drives         3 drives          4 drives
--------         ----------        --------------
A1  A1           A1  A1  A2        A1  A1  A2  A2
A2  A2           A2  A3  A3        A3  A3  A4  A4
A3  A3           A4  A4  A5        A5  A5  A6  A6
A4  A4           A5  A6  A6        A7  A7  A8  A8
..  ..           ..  ..  ..        ..  ..  ..  ..

O exemplo de quatro unidades é idêntico a uma matriz RAID 1 + 0 padrão, enquanto o exemplo de três unidades é uma implementação de software de RAID 1E. O exemplo de duas unidades é equivalente ao RAID 1.

O driver também suporta um layout "distante", no qual todas as unidades são divididas em seções f . Todos os pedaços são repetidos em cada seção, mas são trocados em grupos (por exemplo, em pares). Por exemplo, os layouts f 2 em matrizes de duas, três e quatro unidades seriam assim:

2 drives             3 drives             4 drives
--------             ------------         ------------------
A1  A2               A1   A2   A3         A1   A2   A3   A4
A3  A4               A4   A5   A6         A5   A6   A7   A8
A5  A6               A7   A8   A9         A9   A10  A11  A12
..  ..               ..   ..   ..         ..   ..   ..   ..
A2  A1               A3   A1   A2         A2   A1   A4   A3
A4  A3               A6   A4   A5         A6   A5   A8   A7
A6  A5               A9   A7   A8         A10  A9   A12  A11
..  ..               ..   ..   ..         ..   ..   ..   ..

O layout "Far" foi projetado para oferecer desempenho de striping em uma matriz espelhada; leituras sequenciais podem ser distribuídas, como nas configurações RAID 0. As leituras aleatórias são um pouco mais rápidas, enquanto as gravações sequenciais e aleatórias oferecem velocidade quase igual a outras configurações RAID espelhadas. O layout "Far" tem um bom desempenho para sistemas nos quais as leituras são mais frequentes do que as gravações, o que é um caso comum. Para uma comparação, o RAID 1 regular, fornecido pelo RAID de software do Linux , não distribui leituras, mas pode realizar leituras em paralelo.

O driver md também suporta um layout "offset", no qual cada faixa é repetida o vezes e deslocada por dispositivos f (far). Por exemplo, o 2 layouts em matrizes de duas, três e quatro unidades são dispostas como:

2 drives       3 drives           4 drives
--------       ----------         ---------------
A1  A2         A1  A2  A3         A1  A2  A3  A4
A2  A1         A3  A1  A2         A4  A1  A2  A3
A3  A4         A4  A5  A6         A5  A6  A7  A8
A4  A3         A6  A4  A5         A8  A5  A6  A7
A5  A6         A7  A8  A9         A9  A10 A11 A12
A6  A5         A9  A7  A8         A12 A9  A10 A11
..  ..         ..  ..  ..         ..  ..  ..  ..

Também é possível combinar layouts "próximo" e "deslocamento" (mas não "distante" e "deslocamento").

Nos exemplos acima, k é o número de drives, enquanto n # , f # e o # são dados como parâmetros paramdadmde - layoutopção. RAID de software Linux (kernel do Linuxmd driver) também suporta a criação de configurações RAID 0, 1, 4, 5 e 6 padrão.

RAID 1E

Diagrama de uma configuração RAID 1E

Algumas implementações de RAID 1 tratam matrizes com mais de dois discos de maneira diferente, criando um nível de RAID não padrão conhecido como RAID 1E . Nesse layout, a distribuição de dados é combinada com o espelhamento, espelhando cada faixa gravada em um dos discos restantes na matriz. A capacidade utilizável de uma matriz RAID 1E é 50% da capacidade total de todas as unidades que formam a matriz; se drives de tamanhos diferentes são usados, apenas as porções iguais ao tamanho do menor membro são utilizadas em cada drive.

Um dos benefícios do RAID 1E sobre os pares espelhados normais do RAID 1 é que o desempenho das operações de leitura aleatória permanece acima do desempenho de uma única unidade, mesmo em uma matriz degradada.

RAID-Z

O sistema de arquivos ZFS fornece RAID-Z , um esquema de distribuição de dados / paridade semelhante ao RAID 5 , mas usando largura de fração dinâmica: cada bloco é sua própria fração RAID, independentemente do tamanho do bloco, resultando em cada gravação RAID-Z sendo uma gravação de fração completa . Isso, quando combinado com a semântica transacional de cópia na gravação do ZFS, elimina o erro de furo de gravação . O RAID-Z também é mais rápido do que o RAID 5 tradicional porque não precisa executar a seqüência usual de leitura-modificação-gravação . O RAID-Z não requer nenhum hardware especial, como NVRAM para confiabilidade ou buffer de gravação para desempenho.

Dada a natureza dinâmica da largura de faixa do RAID-Z, a reconstrução do RAID-Z deve atravessar os metadados do sistema de arquivos para determinar a geometria RAID-Z real. Isso seria impossível se o sistema de arquivos e a matriz RAID fossem produtos separados, ao passo que se torna viável quando há uma visão integrada da estrutura lógica e física dos dados. Analisar os metadados significa que o ZFS pode validar cada bloco em relação à sua soma de verificação de 256 bits à medida que avança, enquanto os produtos RAID tradicionais geralmente não podem fazer isso.

Além de lidar com falhas de disco inteiro, o RAID-Z também pode detectar e corrigir corrupção silenciosa de dados , oferecendo "dados de autocorreção": ao ler um bloco RAID-Z, o ZFS o compara com sua soma de verificação e se os discos de dados o fazem Se não retornar a resposta certa, o ZFS lê a paridade e descobre qual disco retornou dados incorretos. Em seguida, ele repara os dados danificados e retorna dados válidos ao solicitante.

Existem cinco modos RAID-Z diferentes: RAID-Z0 (semelhante ao RAID 0, não oferece redundância), RAID-Z1 (semelhante ao RAID 5, permite que um disco falhe), RAID-Z2 (semelhante ao RAID 6, permite dois discos para falhar), RAID-Z3 (uma configuração RAID 7, permite a falha de três discos) e espelho (semelhante ao RAID 1, permite que todos os discos, exceto um).

Drive Extender

O Windows Home Server Drive Extender é um caso especializado de JBOD RAID 1 implementado no nível do sistema de arquivos .

A Microsoft anunciou em 2011 que o Drive Extender não seria mais incluído como parte do Windows Home Server Versão 2, Windows Home Server 2011 (codinome VAIL). Como resultado, houve uma mudança de fornecedor terceirizado para preencher o vazio deixado pela DE. Os concorrentes incluídos são a Division M, os desenvolvedores do Drive Bender e o DrivePool da StableBit.

BeyondRAID

BeyondRAID não é uma verdadeira extensão RAID, mas consolida até 12 discos rígidos SATA em um pool de armazenamento. Ele tem a vantagem de oferecer suporte a vários tamanhos de disco ao mesmo tempo, como o JBOD, ao mesmo tempo em que fornece redundância para todos os discos e permite uma atualização hot-swap a qualquer momento. Internamente, ele usa uma combinação de técnicas semelhantes ao RAID 1 e 5. Dependendo da fração dos dados em relação à capacidade, ele pode sobreviver a até três falhas de unidade, se a "matriz" puder ser restaurada nos discos restantes antes de outra unidade falha. A quantidade de armazenamento utilizável pode ser aproximada somando as capacidades dos discos e subtraindo a capacidade do maior disco. Por exemplo, se uma unidade de 500, 400, 200 e 100 GB fosse instalada, a capacidade utilizável aproximada seria 500 + 400 + 200 + 100 - 500 = 700 GB de espaço utilizável. Internamente, os dados seriam distribuídos em duas matrizes semelhantes a RAID 5 e dois conjuntos semelhantes a RAID 1:

           Drives
 | 100 GB | 200 GB | 400 GB | 500 GB |

                            ----------
                            |   x    | unusable space (100 GB)
                            ----------
                   -------------------
                   |   A1   |   A1   | RAID 1 set (2× 100 GB)
                   -------------------
                   -------------------
                   |   B1   |   B1   | RAID 1 set (2× 100 GB)
                   -------------------
          ----------------------------
          |   C1   |   C2   |   Cp   | RAID 5 array (3× 100 GB)
          ----------------------------
 -------------------------------------
 |   D1   |   D2   |   D3   |   Dp   | RAID 5 array (4× 100 GB)
 -------------------------------------

BeyondRaid oferece um recurso semelhante ao RAID 6 e pode realizar compactação baseada em hash usando hashes SHA-1 de 160 bits para maximizar a eficiência de armazenamento.

Sem medo

Unraid é um sistema operacional baseado em Linux otimizado para armazenamento de arquivos de mídia.

As desvantagens incluem desempenho de gravação mais lento do que um único disco e gargalos quando várias unidades são gravadas simultaneamente. No entanto, o Unraid permite suporte de um pool de cache que pode acelerar drasticamente o desempenho de gravação. Os dados do pool de cache podem ser protegidos temporariamente usando Btrfs RAID 1 até que o Unraid mova para o array com base em uma programação definida no software.

As vantagens incluem menor consumo de energia do que os níveis RAID padrão, a capacidade de usar vários discos rígidos com tamanhos diferentes em sua capacidade total e no caso de várias falhas simultâneas de disco rígido (excedendo a redundância), perdendo apenas os dados armazenados nos discos rígidos com falha em comparação com os níveis RAID padrão, que oferecem distribuição, caso em que todos os dados no array são perdidos quando mais discos rígidos falham do que a redundância pode suportar.

CRYPTO softraid

No OpenBSD , CRYPTO é uma disciplina de criptografia para o subsistema softraid. Ele criptografa os dados em um único bloco para garantir a confidencialidade dos dados. CRYPTO não fornece redundância.

Perfil DUP

Alguns sistemas de arquivos, como Btrfs e ZFS / OpenZFS (com cópias por conjunto de dados = propriedade 1 | 2 | 3), oferecem suporte à criação de várias cópias dos mesmos dados em uma única unidade ou pool de discos, protegendo de setores defeituosos individuais, mas não de um grande número de setores defeituosos ou falha completa da unidade. Isso permite alguns dos benefícios do RAID em computadores que só podem aceitar uma única unidade, como laptops.

RAID Declustered

O RAID sem clusters permite matrizes de disco de tamanho arbitrário enquanto reduz a sobrecarga para os clientes na recuperação de falhas de disco. Ele espalha ou descompacta uniformemente os dados do usuário, as informações de redundância e o espaço livre em todos os discos de uma matriz descompactada. No RAID tradicional, todo um sistema de armazenamento em disco de, digamos, 100 discos seria dividido em vários arrays, cada um com, digamos, 10 discos. Em contraste, no RAID descomposto, todo o sistema de armazenamento é usado para fazer um array. Cada item de dados é escrito duas vezes, como no espelhamento, mas os dados e cópias logicamente adjacentes são espalhados arbitrariamente. Quando um disco falha, os dados apagados são reconstruídos usando todos os discos operacionais do array, cuja largura de banda é maior do que a de menos discos de um grupo RAID convencional. Além disso, se ocorrer uma falha de disco adicional durante uma reconstrução, o número de trilhas impactadas que requerem reparo é nitidamente menor do que a falha anterior e menor do que a sobrecarga de reconstrução constante de um array convencional. A diminuição no impacto da reconstrução descompactada e na sobrecarga do cliente pode ser um fator de três a quatro vezes menor do que um RAID convencional. O desempenho do sistema de arquivos torna-se menos dependente da velocidade de qualquer array de armazenamento de reconstrução único.

Veja também

Notas explicativas

Referências