Compartilhamos nossa experiência de como os SSDs aparecem sob RAID e qual nível de matriz é mais lucrativo

No artigo anterior, já abordamos a questão "O RAID será aplicável aos SSDs" usando os discos Kingston como exemplo, mas fizemos isso apenas dentro da estrutura do nível zero. Neste artigo, analisaremos as opções para o uso de soluções NVMe profissionais e domésticas nos tipos mais populares de matrizes RAID e falaremos sobre a compatibilidade dos controladores Broadcom com as unidades Kingston.



Por que preciso de RAID em um SSD?


As vantagens de matrizes de armazenamento baseadas em SSD sobre matrizes de armazenamento em disco rígido incluem tempo de acesso reduzido à unidade e desempenho superior de leitura / gravação. No entanto, para o desempenho ideal de um RAID baseado em SSD, é necessária uma combinação ideal de processador, cache, software e hardware. Quando todos esses fatores funcionam perfeitamente juntos, uma matriz RAID de um SSD pode superar significativamente uma configuração comparável usando os HDDs tradicionais.

Um SSD típico consome menos energia do que os discos rígidos; portanto, ao combinar um grande número de unidades de estado sólido em uma matriz RAID, economizar energia em comparação com uma matriz RAID de um HDD também pode levar a custos mais baixos no pagamento de contas de eletricidade corporativas.

No entanto, o SSD RAID tem limitações e desvantagens: em particular, um preço mais alto por gigabyte de espaço em comparação com os discos rígidos de capacidade comparável. E o MTBF do flash é limitado por um certo número de ciclos de reescrita. Ou seja, as unidades SSD têm uma certa vida útil, que depende da operação: quanto mais ativamente as informações forem reescritas, mais rápido a unidade falhará. Os SSDs corporativos, por outro lado, têm uma vida decente comparável aos discos rígidos mecânicos.

Como os SSDs da Kingston vivem no modo RAID com controladores Broadcom


No início do advento dos SSDs, os designs de RAID estavam repletos de muitas nuances. Inclusive devido ao uso de unidades de disco rígido menos tolerantes a falhas. As unidades de estado sólido são muito mais confiáveis ​​do que suas contrapartes baseadas em discos magnéticos. Como sabemos, não existem elementos móveis nas soluções SSD; portanto, os danos mecânicos são reduzidos a zero. A falha no SSD devido a picos de energia também é improvável, uma vez que, no nível do seu PC doméstico e de qualquer servidor, você está protegido por UPSs, réguas de energia e até mesmo uma fonte de alimentação.

Ao mesmo tempo, as unidades de estado sólido têm outra vantagem significativa: mesmo se as células de memória estiverem gastas para gravação, os dados ainda poderão ser lidos, mas se o disco magnético estiver danificado, infelizmente.



Hoje, o uso de soluções SSD em matrizes RAID de diferentes níveis é uma prática bastante normal. O principal é escolher as unidades de estado sólido corretas, cuja latência é mínima. Também é ideal usar SSDs do mesmo fabricante e do mesmo modelo, para que não haja uma confusão de unidades que suportem diferentes tipos de cargas e sejam construídas com base em diferentes tipos de memória, controladores e outras tecnologias. Ou seja, se decidíssemos comprar quatro ou 16 SSDs Kingston NVMe para criar uma matriz RAID, seria melhor se todos fossem da mesma série e modelo.

A propósito, no último artigo, citamos os controladores da Broadcom como exemplo quando falamos sobre o SSD NVMe da Kingston. O fato é que, nos manuais desses dispositivos, unidades compatíveis (incluindo soluções do mencionado fabricante americano SSD) são imediatamente registradas, com as quais o controlador funcionará perfeitamente. É necessário confiar nessas informações ao escolher o pacote "controller-SSD" para RAID.

Analisamos o trabalho dos SSDs da Kingston nos tipos mais populares de RAID - "1", "5", "10", "50"


Portanto, o nível "zero" de RAID não fornece redundância de dados, mas apenas aumenta a produtividade. O RAID 0 não fornece nenhuma proteção de dados; portanto, não a consideraremos no segmento corporativo. O RAID 1, por outro lado, fornece redundância completa, mas apenas um aumento modesto de desempenho e, portanto, deve ser considerado se a melhoria de desempenho não é um fator fundamental ao criar uma matriz RAID a partir de um SSD.

RAID 1 baseado em SSDs Kingston e controladores Broadcom


Portanto, a matriz RAID de primeiro nível baseada no controlador Broadcom MegaRAID 9460-16i combina de duas a 32 unidades Kingston, que são cópias uma da outra, e fornece redundância completa. Se estiver usando HDDs tradicionais, a velocidade de gravação e leitura de dados permanecerá no nível desse próprio HDD; em seguida, usando as soluções NVMe SSD, obtemos um aumento de dez vezes no desempenho. Especialmente em termos de tempo de acesso a dados. Por exemplo, com dois SSDs Kingston DC1000M U.2 NVMe no servidor RAID 1, obtemos 350.000 IOPS ao ler dados aleatórios e 75.000 IOPS ao gravar.



Em termos de velocidade de leitura sequencial, os resultados corresponderão às características da unidade - 3200 MB / s. Porém, como os dois SSDs NVMe estão operacionais, os dados podem ser lidos ao mesmo tempo, o que torna as operações de leitura muito rápidas. Mas a velocidade de gravação (reivindicada é de 2000 MB / s) será mais lenta, porque cada operação de gravação é realizada duas vezes.



A matriz RAID 1 é ideal para bancos de dados pequenos ou qualquer outro ambiente que exija tolerância a falhas, mas pequena capacidade. O espelhamento de unidades ajuda especialmente em cenários de recuperação de desastre (o desempenho se deteriora um pouco) porque fornece uma "reanimação" instantânea de dados importantes se uma das unidades da matriz falhar. Porém, como esse nível de proteção exige o dobro da capacidade de armazenar uma cópia espelhada de dados (100 TB exigirá 200 TB de espaço de armazenamento), muitos sistemas corporativos usam opções de armazenamento mais econômicas: RAID 5 e RAID 6.

RAID 5 baseado em SSDs Kingston e controladores Broadcom


Para organizar uma matriz RAID de quinto nível, precisamos de pelo menos três unidades, cujos dados são distribuídos (gravados ciclicamente em todas as unidades na matriz), mas não são duplicados. Ao organizá-los, deve-se levar em conta sua estrutura mais complexa, pois um conceito como "soma de verificação" (ou "paridade") aparece aqui. Esse conceito refere-se à função algébrica lógica XOR (também é o exclusivo "OR"), que determina o uso de pelo menos três unidades na matriz (máximo - 32). Nesse caso, as informações de paridade são registradas em todos os "discos" na matriz.



Para uma matriz de quatro SSDs Kingston DC500R SATA com capacidade de 3,84 TB cada, obtemos 11,52 TB de espaço e 3,84 para somas de verificação. E se você combinar 16 unidades Kingston DC1000M U.2 NVMe em um RAID de quinto nível com capacidade de 7,68 TB, ensinaremos 115,2 TB com uma perda de 7,68 TB. Como você pode ver, quanto mais unidades, melhor. Também é melhor porque, quanto mais unidades no RAID 5, maior o desempenho total de gravação. E a leitura linear alcançará o RAID 0.



Um grupo de unidades RAID 5 fornece alto rendimento (especialmente para arquivos grandes) e redundância com perda mínima de energia. Esse tipo de organização da matriz é mais adequado para redes que executam muitas operações de E / S pequenas ao mesmo tempo. Mas não vale a pena usá-lo para tarefas que exigem um grande número de operações de gravação de blocos pequenos ou pequenos.
Há mais uma nuance: se pelo menos uma das unidades NVMe falhar, o RAID 5 entra no modo de degradação e a falha de outro dispositivo de armazenamento pode se tornar crítica para todos os dados. No caso de uma única falha na unidade, o controlador RAID usa as informações de paridade para recriar todos os dados ausentes.

RAID 10 baseado em SSDs Kingston e controladores Broadcom


Portanto, o RAID 0 fornece um aumento duplo na velocidade e no tempo de acesso, e o RAID 1 fornece confiabilidade. Seria ideal combiná-los, e aqui o RAID 10 (ou 1 + 0) vem em socorro. “Dez” é montado a partir de quatro unidades SATA SSD ou NVMe (máximo - 32) e implica uma matriz de “espelhos”, o número de unidades nas quais sempre deve ser um múltiplo de quatro. Os dados nessa matriz são gravados particionando em blocos fixos (como no caso do RAID 0) e intercalando entre unidades, distribuindo cópias entre os "discos" no RAID 1. E devido à possibilidade de acesso simultâneo a vários grupos de discos, o RAID 10 mostra alto desempenho.



Como o RAID 10 é capaz de distribuir dados por vários pares de espelhos, isso significa que pode permitir a falha de uma unidade em um par. No entanto, no caso de uma falha dos dois pares de espelhos (ou seja, todas as quatro unidades), ocorrerá uma perda inevitável de dados. Como resultado, também obtemos boa tolerância a falhas e confiabilidade. Mas vale lembrar que, como o RAID 1, uma matriz de décimo nível usa apenas metade da capacidade total e, portanto, é uma solução cara. Sim e difícil de configurar.

O RAID 10 é adequado para uso com data warehouses que exigem 100% de redundância de grupos de discos espelhados, além de maior desempenho de E / S de RAID 0. É a melhor solução para bancos de dados de tamanho médio ou qualquer ambiente que exija maior tolerância a falhas que o RAID 5)

RAID 50 baseado em SSDs Kingston e controladores Broadcom


Uma matriz combinada, semelhante ao RAID do décimo nível, que é uma matriz de nível zero criada a partir de matrizes do quinto nível. Como no caso anterior, o principal objetivo dessa matriz é obter um desempenho dobrado, mantendo a confiabilidade dos dados nas matrizes RAID 5. Ao mesmo tempo, o RAID 50 fornece desempenho de gravação aprimorado e melhor proteção de dados do que o RAID 5 padrão no caso de uma falha no disco e também é capaz de recuperação mais rápida em caso de falha de uma das unidades.



Um grupo de discos RAID 50 divide os dados em blocos menores e os distribui para cada matriz RAID 5. Um grupo de discos RAID 5, por sua vez, também divide os dados em blocos menores, calcula a paridade, executa uma operação lógica OR nos blocos e, em seguida, executa operações de gravação em blocos de dados e paridade para cada disco no grupo de discos.

E embora o desempenho inevitavelmente diminua no caso de uma falha de uma das unidades, não é tão significativo quanto em uma matriz RAID 5, pois uma falha afeta apenas uma das matrizes, deixando a outra totalmente operacional. De fato, um RAID 50 pode suportar até oito falhas da unidade HDD / SSD / NVMe se cada unidade com falha estiver em um array RAID 5 separado.



O RAID 50 é melhor usado para aplicativos que exigem alta confiabilidade e deve atender a um grande número de solicitações, mantendo altas taxas de transferência de dados e unidades de custo mais baixo que o RAID 10. No entanto, como são necessárias pelo menos seis unidades para configurar o RAID 50, custo não é completamente excluído como um fator. Uma das desvantagens do RAID 50 é que, como o RAID 5, ele precisa de um controlador sofisticado: como o Broadcom MegaRAID 9460-16i que mencionamos em um artigo anterior.

Também é importante notar que o RAID 50 possui menos espaço em disco que o RAID 5, devido à alocação de capacidade para o conteúdo dos registros de paridade. No entanto, ele ainda possui mais espaço útil que outros níveis de RAID, especialmente aqueles que usam espelhamento. Com um requisito mínimo de seis unidades, o RAID 50 pode ser uma opção cara, mas o espaço em disco extra justifica o custo, protegendo os dados corporativos. Esse tipo de matriz é recomendado para trabalhar com dados que exigem alta confiabilidade de armazenamento, alta frequência de solicitações, alta velocidade de transmissão e alta capacidade de hospedagem.

RAID 6 e RAID 60: Não nos esquecemos deles


Como falamos sobre matrizes dos quinto e quinquagésimo níveis, é um pecado não mencionar tipos de organização de matrizes como RAID 6 e RAID 60.



O desempenho do RAID 6 é semelhante ao RAID 5, mas aqui pelo menos duas unidades são fornecidas com paridade, o que permite que o array sobreviva à falha de duas unidades sem perda de dados (no RAID 5, essa situação é extremamente indesejável). Isso garante maior confiabilidade. Caso contrário, tudo será o mesmo da matriz de quinto nível: no caso de uma falha de um ou dois discos, o controlador RAID usa blocos de paridade para recriar todas as informações ausentes. Se duas unidades falharem, a recuperação não ocorrerá simultaneamente: primeiro, a primeira unidade é reanimada e depois a segunda. Assim, são executadas duas operações de recuperação de dados.



É fácil adivinhar que, se o RAID 50 é uma matriz de nível zero de matrizes de quinto nível, o RAID 60 é uma matriz de nível zero de matrizes de sexto nível, sobre as quais acabamos de falar. Ou seja, essa organização de armazenamento RAID permite sobreviver à perda de dois SSDs em cada grupo de unidades RAID 6. O princípio de operação é semelhante ao descrito na seção RAID 50, mas o número de falhas que uma matriz do sexagésimo nível pode suportar aumenta de 8 para 16 unidades. Normalmente, essas matrizes são usadas para atendimento on-line ao cliente, o que requer alta tolerância a falhas.

Para resumir:


Embora o espelhamento forneça mais tolerância a falhas do que o RAID 50/60, ele também requer muito mais espaço. Como a quantidade de dados dobra, você recebe apenas 50% da capacidade total das unidades instaladas no servidor para gravar e armazenar informações. A escolha entre RAID 50/60 e RAID 10 provavelmente dependerá de seus orçamentos, capacidade do servidor e necessidades de proteção de dados. E o custo vem à tona quando falamos de soluções SSD (classe corporativa e de consumidor).

É igualmente importante que agora tenhamos certeza - o RAID baseado em SSD é uma solução completamente segura e prática normal para os negócios modernos. Como parte do uso doméstico, também há um motivo para mudar para o NVMe, se os orçamentos permitirem. E se você ainda tiver uma pergunta, por que tudo isso é necessário, retorne ao início do artigo - já a respondemos em detalhes.

Este artigo foi preparado com o apoio de nossos colegas da Broadcom, que fornecem seus controladores aos engenheiros da Kingston para testes com unidades SATA / SAS / NVMe de classe empresarial. Graças a essa simbiose amigável, os clientes não precisam duvidar da confiabilidade e estabilidade dos discos Kingston com os controladores HBA e RAID da Broadcom.

Informações adicionais sobre os produtos Kingston podem ser encontradas no site oficial da empresa.

Source: https://habr.com/ru/post/pt482248/


All Articles