Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

В material passado Já consideramos a questão “Podemos usar RAID em SSDs” usando o exemplo das unidades Kingston, mas fizemos isso apenas dentro do nível zero. Neste artigo, analisaremos as opções de uso de soluções NVMe profissionais e domésticas nos tipos mais populares de arrays RAID e falaremos sobre compatibilidade de controladores Broadcom com unidades Kingston.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

Por que você precisa de RAID em SSD?

Os benefícios dos arrays de armazenamento baseados em SSD em relação aos arrays de armazenamento HDD incluem tempo de acesso à unidade reduzido e desempenho superior de leitura/gravação. No entanto, o desempenho ideal do RAID baseado em SSD requer a combinação ideal de processador, cache, software e hardware. Quando todos esses fatores funcionam perfeitamente juntos, uma matriz SSD RAID pode superar significativamente uma configuração comparável usando HDDs tradicionais.

Um SSD típico utiliza menos energia que os HDDs, portanto, quando você combina um grande número de SSDs em uma matriz RAID, a economia de energia em comparação com o HDD RAID também pode resultar em custos mais baixos nas contas de energia corporativas.

No entanto, o SSD RAID tem limitações e desvantagens, incluindo um preço mais elevado por gigabyte de espaço em comparação com discos rígidos de capacidade comparável. E o tempo entre falhas da memória flash é limitado a um certo número de ciclos de reescrita. Ou seja, as unidades SSD têm uma certa vida útil, que depende do uso: quanto mais ativamente as informações nelas contidas forem reescritas, mais rápido a unidade irá falhar. Por outro lado, os SSDs empresariais têm uma vida útil decente, comparável aos discos rígidos mecânicos.

Como os SSDs Kingston funcionam no modo RAID com controladores Broadcom

No início do advento das unidades SSD, os designs RAID eram repletos de muitas nuances. Inclusive devido ao uso de HDDs 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, as soluções SSD não possuem elementos móveis, portanto os danos mecânicos são reduzidos a zero. A falha das unidades de estado sólido devido a picos de energia também é improvável, visto que no nível de um PC doméstico e de qualquer servidor você está protegido por UPSs, protetores contra surtos e até mesmo uma fonte de alimentação.

Ao mesmo tempo, as unidades de estado sólido têm outra vantagem significativa: mesmo que as células de memória estejam desgastadas pela gravação, os dados ainda podem ser lidos a partir delas, mas se o disco magnético estiver danificado, infelizmente.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

Hoje, usar soluções SSD em matrizes RAID de diferentes níveis é uma prática bastante normal. O principal é escolher os SSDs certos, cuja latência seja mínima. Também é ideal usar SSDs do mesmo fabricante e do mesmo modelo, para que você não acabe com uma miscelânea de unidades que suportam diferentes tipos de cargas e são construídas em diferentes tipos de memória, controladores e outras tecnologias. Ou seja, se decidíssemos comprar quatro ou 16 SSDs NVMe da Kingston para criar um array RAID, seria melhor se todos viessem da mesma série e gama de modelos.

A propósito, em último artigo Não foi à toa que citamos os controladores Broadcom como exemplo quando falamos sobre os SSDs NVMe da Kingston. O fato é que os manuais desses dispositivos especificam imediatamente drives compatíveis (incluindo soluções do já citado fabricante americano de SSD), com os quais o controlador funcionará perfeitamente. Você precisa confiar nessas informações ao escolher uma combinação de controlador-SSD para RAID.

Analisamos o funcionamento dos SSDs Kingston nos tipos de RAID mais populares - “1”, “5”, “10”, “50”

Portanto, um nível RAID “zero” não fornece redundância de dados, apenas aumenta o desempenho. O RAID 0 não oferece nenhuma proteção de dados, portanto não o consideraremos no segmento corporativo. O RAID 1, por outro lado, fornece redundância total, mas apenas ganhos modestos de desempenho e, portanto, deve ser considerado se as melhorias de desempenho não forem uma consideração principal ao criar uma matriz RAID a partir de um SSD.

RAID 1 baseado em SSD Kingston e controladores Broadcom

Assim, o array RAID de primeiro nível baseado no controlador Broadcom MegaRAID 9460-16i combina de duas a 32 unidades Kingston, que são cópias umas das outras, e fornece redundância completa. Se, ao usar HDDs tradicionais, a velocidade de gravação e leitura de dados permanecesse no mesmo nível do próprio HDD, então com o uso de soluções SSD NVMe obtemos um aumento de desempenho dez vezes maior. Principalmente em termos de tempo de acesso aos dados. Por exemplo, com dois SSDs Kingston DC1000M U.2 NVMe no servidor RAID 1, obtemos 350 IOPS ao ler dados aleatórios e 000 IOPS ao gravar.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

Em termos de velocidade de leitura sequencial, os resultados corresponderão às características do drive - 3200 MB/s. Mas como ambos os SSDs NVMe estão funcionando, os dados podem ser lidos deles simultaneamente, tornando as operações de leitura bastante rápidas. Mas a velocidade de gravação (alegada como 2000 MB/s) será mais lenta porque cada operação de gravação é executada duas vezes.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

O RAID 1 é ideal para bancos de dados pequenos ou qualquer outro ambiente que exija tolerância a falhas, mas com pequena capacidade. O espelhamento de unidades é especialmente útil em cenários de recuperação de desastres (com uma leve penalidade de desempenho) porque fornece “reanimação” instantânea de dados importantes se uma das unidades do array falhar. Mas como este nível de proteção requer o dobro da capacidade de armazenamento da cópia espelhada dos dados (100 TB de armazenamento exigiriam 200 TB de espaço), muitos sistemas empresariais utilizam opções de armazenamento mais económicas: RAID 5 e RAID 6.

RAID 5 baseado em SSD Kingston e controladores Broadcom

Para organizar uma matriz RAID de nível 32, precisamos de pelo menos três unidades, cujos dados são intercalados (gravados ciclicamente em todas as unidades da matriz), mas não duplicados. Ao organizá-los, deve-se levar em consideração sua estrutura mais complexa, pois aqui surge o conceito de “checksum” (ou “paridade”). Este conceito significa a função algébrica lógica XOR (também exclusiva “OR”), que determina o uso de pelo menos três drives no array (máximo XNUMX). Neste caso, as informações de paridade são gravadas em todos os “discos” do array.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

Para um conjunto de quatro unidades SSD 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 combinarmos 16 drives Kingston DC1000M U.2 NVMe com capacidade de 7,68 TB em RAID nível 115,2, obteremos 7,68 TB com uma perda de 5 TB. Como você pode ver, quanto mais unidades, melhor no final. Também é melhor porque quanto mais unidades houver no RAID 0, maior será o desempenho geral das operações de gravação. E a leitura linear atingirá o nível RAID XNUMX.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

Um grupo de discos RAID 5 oferece alto rendimento (especialmente para arquivos grandes) e redundância com perda mínima de energia. Esse tipo de organização de array é mais adequado para redes que executam muitas pequenas operações de entrada/saída (E/S) simultaneamente. Mas você não deve usá-lo para tarefas que exijam um grande número de operações de gravação em blocos pequenos ou pequenos.
Há mais uma nuance: se pelo menos um dos drives NVMe falhar, o RAID 5 entra em modo de degradação e a falha de outro dispositivo de armazenamento pode se tornar crítica para todos os dados. Se uma unidade da matriz falhar, o controlador RAID usará informações de paridade para recriar todos os dados ausentes.

RAID 10 baseado em SSD Kingston e controladores Broadcom

Portanto, o RAID 0 nos proporciona um aumento duplo na velocidade e no tempo de acesso, e o RAID 1 fornece confiabilidade. Idealmente, eles seriam combinados, e é aqui que o RAID 10 (ou 1+0) vem em socorro. “Dez” é montado a partir de quatro drives SATA SSD ou NVMe (máximo 32) e implica uma matriz de “espelhos”, cujo número de drives deve ser sempre um múltiplo de quatro. Os dados nesta matriz são gravados particionando-os em blocos fixos (como é o caso do RAID 0) e distribuindo-os entre unidades, distribuindo cópias entre as “unidades” na matriz RAID 1. E graças à capacidade de acessar simultaneamente vários grupos de discos , RAID 10 mostra alto desempenho.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

Como o RAID 10 é capaz de distribuir dados entre vários pares espelhados, isso significa que ele pode tolerar a falha de uma unidade do par. No entanto, se ambos os pares de espelhos (ou seja, todas as quatro unidades) falharem, ocorrerá inevitavelmente perda de dados. Como resultado, também obtemos boa tolerância a falhas e confiabilidade. Mas vale a pena ter em mente que, assim como o RAID 1, o array de décimo nível utiliza apenas metade da capacidade total e, portanto, é uma solução cara. E também difícil de configurar.

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

RAID 50 baseado em SSD Kingston e controladores Broadcom

Um array combinado semelhante ao RAID de nível dez, que é um array de nível zero criado a partir de arrays de nível cinco. Como antes, o principal objetivo deste array é alcançar o dobro do desempenho enquanto mantém a confiabilidade dos dados em arrays RAID 5. No entanto, o RAID 50 fornece maior desempenho de gravação e melhor proteção de dados do que o RAID 5 padrão no caso de falha do disco, e também é capaz de recuperação mais rápida em caso de falha de uma das unidades.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

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

Embora o desempenho seja inevitavelmente prejudicado se uma das unidades falhar, isso não é tão significativo quanto com um array RAID 5, já que uma falha afeta apenas um dos arrays, deixando o outro totalmente funcional. Na verdade, o RAID 50 pode suportar até oito falhas de unidade HDD/SSD/NVMe se cada “unidade” com falha estiver em uma matriz RAID 5 separada.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

O RAID 50 é melhor usado para aplicativos que exigem alta confiabilidade e devem lidar com um grande número de solicitações, mantendo altas taxas de transferência de dados e custos de unidade mais baixos do que o RAID 10. No entanto, como um array RAID 50 requer um mínimo de seis unidades para configurar, o custo não está completamente descartado como um fator. Uma das desvantagens do RAID 50 é que, como o RAID 5, ele requer um controlador complexo: como mencionado por nós no último artigo MegaRAID 9460-16i da Broadcom.

Também vale a pena notar que o RAID 50 tem menos espaço em disco utilizável que o RAID 5 devido à alocação de capacidade para conter registros de paridade. No entanto, ainda possui mais espaço utilizável do que outros níveis de RAID, especialmente aqueles que utilizam espelhamento. Com um requisito mínimo de seis unidades, o RAID 50 pode ser uma opção cara, mas o espaço adicional em disco compensa o custo, protegendo os dados corporativos. Esse tipo de array é recomendado para dados que exigem alta confiabilidade de armazenamento, altas taxas de consulta, altas taxas de transferência e grande capacidade de armazenamento.

RAID 6 e RAID 60: também não nos esquecemos deles

Como já falamos sobre arrays do quinto e quinquagésimo nível, seria uma pena não mencionar tipos de organização de array como RAID 6 e RAID 60.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

O desempenho do RAID 6 é semelhante ao RAID 5, mas aqui pelo menos duas unidades estão sujeitas ao controle de paridade, o que permite que o array sobreviva à falha de duas unidades sem perder dados (no RAID 5 esta situação é extremamente indesejável). Isso garante maior confiabilidade. Caso contrário, tudo é igual a um array de nível XNUMX: se um ou dois discos falharem, 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: a primeira unidade será restaurada primeiro e depois a segunda. Assim, são realizadas duas operações de recuperação de dados.

Compartilhamos nossa experiência, como os SSDs funcionam na estrutura do RAID e qual nível de matriz é mais lucrativo

Não é difícil adivinhar que se o RAID 50 é um array de nível zero de arrays de nível cinco, então o RAID 60 é um array de nível zero de arrays de nível seis sobre o qual acabamos de falar. Ou seja, tal organização de armazenamento RAID permite sobreviver à perda de dois SSDs em cada grupo de drives RAID 6. O princípio de funcionamento é semelhante ao que falamos na seção sobre RAID 50, mas o número de falhas que um array de nível sessenta pode suportar aumentos de 8 a 16 unidades. Normalmente, esses arrays são usados ​​para atendimento ao cliente on-line, o que requer alta tolerância a falhas.

Resumindo:

Embora o espelhamento forneça maior 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ê obtém apenas 50% da capacidade total das unidades instaladas no servidor para gravação e armazenamento de informações. A escolha entre RAID 50/60 e RAID 10 provavelmente dependerá dos seus orçamentos disponíveis, da capacidade do servidor e das suas necessidades de proteção de dados. Além disso, o custo vem à tona quando falamos de soluções SSD (tanto corporativas quanto de consumo).

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

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 esta simbiose amigável, os clientes não precisam duvidar da confiabilidade e estabilidade das unidades Kingston com controladores HBA e RAID de produção. Broadcom.

Mais informações sobre os produtos da Kingston podem ser encontradas em o site oficial empresa.

Fonte: habr.com

Adicionar um comentário