Há muitos recursos disponíveis online que discutem o uso de unidades SSD em configurações RAID - no entanto, elas datam de alguns anos e o ecossistema SSD é muito veloz - exatamente como esperamos o lançamento do produto "Optane" da Intel ainda este ano o que mudará tudo ... de novo.
Prefácio minha pergunta afirmando que há uma diferença qualitativa entre SSDs de nível de consumidor (por exemplo, Intel 535) e SSDs de nível de datacenter (por exemplo, Intel DC S3700).
Minha principal preocupação está relacionada ao TRIM
suporte em cenários RAID. No meu entender, apesar de serem mais de 6 anos desde que os SSDs foram introduzidos em computadores de consumo e 4 anos desde que o NVMe estava disponível comercialmente - os controladores RAID modernos ainda não suportam a emissão de TRIM
comandos para SSDs conectados - com exceção dos controladores RAID da Intel no modo RAID-0.
Estou surpreso que o TRIM
suporte não esteja presente no modo RAID-1, dado o modo como as unidades se espelham, parece simples. Mas eu discordo.
Observo que, se você deseja tolerância a falhas com discos (HDD e SSD), os usaria em uma configuração RAID - mas como os SSDs estariam sem TRIM, eles sofreriam amplificação de gravação, o que resultaria em desgaste extra, o que por sua vez, faria com que os SSDs falhassem prematuramente - isso é uma ironia infeliz: um sistema projetado para proteger contra falhas na unidade pode acabar resultando diretamente nela.
Assim:
O
TRIM
suporte é necessário para SSDs modernos (da era 2015-2016)?1.1 Existe alguma diferença na necessidade de
TRIM
suporte entre SSDs baseados em SATA, SATA-Express e NVMe?Freqüentemente, as unidades são anunciadas como tendo uma coleta de lixo interna aprimorada; isso evita a necessidade
TRIM
? Como o processo de GC deles funciona em ambientes RAID?1.1 Por exemplo, consulte este controle de qualidade de 2010 que descreve uma degradação de desempenho muito ruim devido a não-TRIMming ( https://superuser.com/questions/188985/how-badly-do-ssds-degrade-without-trim ) - e isso O artigo de 2015 defende que o uso do TRIM é altamente recomendado ( http://arstechnica.com/gadgets/2015/04/ask-ars-my-ssd-does-garbage-collection-so-i-dont-need-trim -direita / ). Qual é a sua resposta a esses argumentos fortes para a necessidade de
TRIM
?Muitos artigos e discussões de anos anteriores dizem respeito ao flash SLC vs MLC e que o SLC é preferível, devido à sua vida útil muito mais longa - no entanto, parece que todos os SSDs atualmente (independentemente de onde estão no espectro Consumidor para Empresa) são MLC esses dias - essa distinção é mais relevante?
1.1 E o flash TLC?
Os SSDs corporativos tendem a ter limites de resistência / gravação muito mais altos (geralmente medidos em quantas vezes você pode sobrescrever completamente a unidade em um dia, durante a vida útil prevista de 5 anos da unidade) - se o limite do ciclo de gravação for muito alto (por exemplo, 100 gravações completas por dia) isso significa que elas não precisam
TRIM
, porque esses limites são muito altos ou, pelo contrário, esses limites são atingíveis apenas usando-seTRIM
?
Respostas:
Vamos tentar responder uma pergunta de cada vez:
Resposta curta: na maioria dos casos, não. Resposta longa: se você reservar espaço livre suficiente (~ 20%), mesmo a unidade de nível consumidor geralmente possui valores de consistência de desempenho muito bons (mas você precisa evitar as unidades que, em vez disso, se engasgam com gravações sustentadas). As unidades de nível corporativo são ainda melhores, tanto porque possuem maior espaço livre por padrão quanto porque o conjunto controlador / firmware é otimizado para o uso contínuo da unidade. Por exemplo, dê uma olhada na unidade S3700 que você referenciou: mesmo sem aparar, ela tem uma consistência de gravação muito boa.
O coletor de lixo da unidade faz sua mágica dentro da caixa de proteção da unidade - não sabe nada sobre o ambiente externo. Isso significa que não é afetado (principalmente) pelo nível RAID da matriz. Dito isso, alguns níveis de RAID (basicamente o baseado em paridade) podem às vezes (e em alguma implementação específica) aumentar o fator de amplificação de gravação, o que, por sua vez, significa um trabalho mais alto para as rotinas do GC.
Os drives SLC basicamente desapareceram da empresa, sendo relegados principalmente a tarefas militares e algumas tarefas industriais. A empresa marcada agora está dividida em três graus:
Na realidade, qualquer um dos tipos de flash acima deve fornecer uma capacidade total de gravação total e, de fato, você pode encontrar unidades corporativas com todos os tipos de flash acima.
A real diferenciação entre unidades empresariais e consumidor é:
Drivers de nível corporativo são melhores principalmente devido a seus controladores e capacitores de energia, em vez de melhor flash.
Como afirmado acima, as unidades de nível empresarial têm um espaço livre padrão muito maior (~ 20%), o que, por sua vez, reduz drasticamente a necessidade de TRIMs regulares
Enfim, como uma observação lateral, considere alguns RAIDs de software que suportam TRIMs (alguém disse Linux MDRAID? )
fonte
TRIM não é algo com que me preocupo ao usar SSDs em controladores RAID modernos. Os SSDs melhoraram, os recursos do controlador RAID de hardware foram otimizados para essas cargas de trabalho, e os relatórios de resistência geralmente estão disponíveis.
TRIM é para unidades SATA de extremidade inferior. Para SSDs SAS, temos o unmap de SCSI, e talvez seja por isso que não encontro as necessidades do TRIM ...
Mas o outro comentarista está correto. O armazenamento definido por software (SDS) está mudando a maneira como usamos SSDs. Nas soluções SDS, os controladores RAID são irrelevantes. E coisas como TRIM tendem a ser menos importantes porque os SSDs estão preenchendo funções especificadas. Penso no cache de leitura do Nimble storage ou no ZFS L2ARC e ZIL ... Todos atendem a necessidades específicas e o software está aproveitando os recursos de maneira mais inteligente.
fonte
Níveis de RAID com SSD Uma resposta acima sugere que os níveis de RAID com paridade, como o RAID 5, aumentam a amplificação de gravação. Existe realmente mais de uma maneira de interpretar isso: o impacto em uma unidade ou o impacto no conjunto de unidades.
Comparado a nenhuma redundância, o RAID 5 adiciona gravações ao conjunto à medida que adiciona paridade de soma de verificação. Comparado a uma matriz RAID 0 de unidades (n-1), o impacto por unidade da matriz RAID 5 com n unidades não é nada. Cada uma das n unidades recebe o mesmo número de gravações. O RAID 5 adiciona 1 / (n-1) gravações extras ao conjunto. No entanto, o RAID 1 e o RAID 10 adicionam gravações 100% extras ao conjunto, porque tudo o que é gravado em um SSD é gravado em seu espelho.
Portanto, em termos de gravação em um conjunto RAID 5 versus um conjunto RAID 10 com o mesmo número de unidades, os SSDs no conjunto RAID 5 receberão menos gravações. E isso permanece verdadeiro mesmo se você aumentar o número de SSDs no conjunto RAID 10 para igualar a capacidade útil.
fonte
shodanshok tocou na resposta real aqui. Se você reservar espaço extra, "provisionamento em excesso", a resistência do SSD e a consistência no desempenho de gravação serão aprimoradas ao longo do tempo, e a falta de suporte ao TRIM se tornará irrelevante. A reserva desse espaço extra pode ser feita de maneira simples, começando com um novo SSD, particionando menos do que a capacidade total. A maioria dos controladores in-drive trata o espaço nunca usado da mesma forma que o espaço reservado e, assim, reduz significativamente a amplificação de gravação. Para inicialização e sistema operacional, 10% de espaço reservado é provavelmente suficiente. Para unidades que são reescritas com frequência, aumente esse espaço.
fonte