Il existe de nombreuses ressources disponibles en ligne qui traitent de l'utilisation de disques SSD dans des configurations RAID - mais celles-ci remontent généralement à quelques années, et l'écosystème SSD évolue très rapidement - à droite, car nous attendons la sortie du produit "Optane" d'Intel plus tard cette année. ce qui va tout changer ... encore.
Je préface ma question en affirmant qu'il existe une différence qualitative entre les SSD de qualité grand public (par exemple Intel 535) et les SSD de qualité datacenter (par exemple Intel DC S3700).
Ma principale préoccupation concerne la prise en charge de TRIM
dans les scénarios RAID. À ma connaissance, bien qu'il y ait plus de 6 ans depuis l'introduction des SSD dans les ordinateurs grand public et 4 ans depuis que NVMe était disponible dans le commerce - les contrôleurs RAID modernes ne prennent toujours pas en charge l'émission de commandes TRIM
aux SSD connectés - avec à l'exception des contrôleurs RAID d'Intel en mode RAID-0.
Je suis surpris que la prise en charge de TRIM
ne soit pas présente en mode RAID-1, étant donné la façon dont les disques se reflètent, cela semble simple. Mais je m'égare.
Je note que si vous voulez une tolérance aux pannes avec des disques (à la fois HDD et SSD), vous les utiliseriez dans une configuration RAID - mais comme les SSD seraient sans TRIM cela signifie qu'ils subiraient une amplification d'écriture qui entraînerait une usure supplémentaire, ce qui à son tour, les disques SSD tomberaient en panne prématurément - c'est une ironie malheureuse: un système conçu pour se protéger contre les pannes de disque pourrait finir par en résulter directement.
Donc:
La prise en charge de TRIM
est-elle nécessaire pour les SSD modernes (ère 2015-2016)?
1.1. Existe-t-il une différence dans la nécessité de prendre en charge TRIM
entre les disques SSD SATA, SATA-Express et NVMe?
Souvent, les lecteurs sont annoncés comme ayant amélioré la collecte des déchets intégrée; cela évite-t-il la nécessité de TRIM
? Comment fonctionne leur processus GC dans les environnements RAID?
1.1. Par exemple, consultez cet AQ de 2010 qui décrit une dégradation des performances assez mauvaise en raison de la non-TRIM ( https://superuser.com/questions/188985/how-badly-do-ssds- degrade-without-trim ) - et cet article de 2015 démontre que l'utilisation de TRIM est fortement recommandée ( http://arstechnica.com/gadgets/ 2015/04/ask-ars-my-ssd-does-garbage-collection-so-i-don't-need-trim-right/ ). Quelle est votre réponse à ces arguments solides en faveur de la nécessité de TRIM
?
De nombreux articles et discussions des années précédentes concernent SLC vs MLC flash et que SLC est préférable, en raison de sa durée de vie beaucoup plus longue - mais il semble que tous les SSD aujourd'hui (indépendamment de leur position sur le spectre Consumer-to-Enterprise) soient MLC ces jours-ci - cette distinction est-elle encore pertinente?
1.1 Et qu'en est-il du flash TLC?
Les SSD d'entreprise ont tendance à avoir des limites d'endurance/d'écriture beaucoup plus élevées (souvent mesurées en combien de fois vous pouvez complètement écraser le disque en une journée, tout au long de la durée de vie attendue d'un disque de 5 ans) - si leur limite de cycle d'écriture est très élevée (par exemple 100 écritures complètes par jour), cela signifie-t-il qu'elles n'ont pas du tout besoin de TRIM
parce que ces limites sont si élevées, ou - au contraire - ces limites ne peuvent-elles être atteintes qu'en utilisant TRIM
?
Essayons de répondre à une question à la fois:
Réponse courte: dans la plupart des cas, non. Réponse longue: si vous réservez suffisamment d'espace libre (~ 20%), même les disques grand public ont généralement de bonnes valeurs de cohérence des performances (mais vous avez besoin de pour éviter les lecteurs qui, au lieu de cela, étouffent les écritures prolongées). Les disques de niveau entreprise sont encore meilleurs, à la fois parce qu'ils ont un espace disponible plus élevé par défaut et parce que leur combinaison contrôleur/micrologiciel est optimisée pour une utilisation continue du disque. Par exemple, jetez un œil au lecteur S3700 que vous avez référencé: même sans ajustement, il a une très bonne cohérence d'écriture.
Le ramasse-miettes du lecteur fait sa magie à l'intérieur du bac à sable du lecteur - il ne sait rien de l'environnement extérieur. Cela signifie qu'il n'est (généralement) pas affecté par le niveau RAID de la baie. Cela dit, certains niveaux RAID (celui basé sur la parité, fondamentalement) peuvent parfois (et dans certaines implémentations spécifiques) augmenter le facteur d'amplification d'écriture, ce qui signifie à son tour un travail plus important pour les routines GC.
Les disques SLC ont pratiquement disparu de l'entreprise, relégués principalement à des tâches militaires et à certaines tâches industrielles. L'entreprise marquée est désormais divisée en trois grades:
En réalité, l'un des types de flash ci-dessus devrait vous fournir une grande capacité d'écriture totale et, en fait, vous pouvez trouver des lecteurs d'entreprise avec tous les types de flash ci-dessus.
La véritable différenciation entre les lecteurs d'entreprise et de consommation est:
Les pilotes de niveau entreprise sont meilleurs principalement en raison de leurs contrôleurs et condensateurs de puissance, plutôt qu'en raison d'un meilleur flash.
Comme indiqué ci-dessus, les disques de qualité entreprise ont un espace de rechange par défaut beaucoup plus élevé (~ 20%), ce qui, à son tour, réduit considérablement le besoin de TRIM réguliers
Quoi qu'il en soit, comme remarque, veuillez considérer certains RAID logiciels qui prennent en charge les TRIM (quelqu'un a dit Linux MDRAID?)
TRIM n'est pas quelque chose qui m'inquiète lorsque j'utilise des SSD sur des contrôleurs RAID modernes. Les disques SSD se sont améliorés, les fonctionnalités du contrôleur RAID matériel ont été optimisées pour ces charges de travail et les rapports d'endurance sont généralement en place.
TRIM est destiné aux disques SATA bas de gamme. Pour les SSD SAS, nous avons un mappage SCSI, et c'est peut-être la raison pour laquelle je ne rencontre pas les besoins TRIM ...
Mais l'autre intervenant a raison. Le stockage défini par logiciel (SDS) change la façon dont nous utilisons les SSD. Dans les solutions SDS, les contrôleurs RAID ne sont pas pertinents. Et des choses comme TRIM ont tendance à être moins importantes parce que les SSD remplissent des rôles spécifiés. Je pense au cache de lecture de stockage Nimble ou aux ZFS L2ARC et ZIL ... Ils répondent tous à des besoins spécifiques et le logiciel exploite les ressources de manière plus intelligente.
Niveaux RAID avec SSD Une réponse ci-dessus suggère que les niveaux RAID avec parité, comme RAID 5, augmentent l'amplification d'écriture. Il y a vraiment plus d'une façon d'interpréter cela: l'impact sur un lecteur ou l'impact sur l'ensemble de lecteurs.
Par rapport à l'absence de redondance, RAID 5 ajoute des écritures à l'ensemble car il ajoute la parité de somme de contrôle. Comparé à une matrice RAID 0 de disques (n-1), l'impact par disque d'une matrice RAID 5 avec n disques n'est rien. Chacun des n lecteurs reçoit autant d'écritures. RAID 5 ajoute 1/(n-1) écritures supplémentaires à l'ensemble. Cependant, RAID 1 et RAID 10 ajoutent 100% d'écritures supplémentaires à l'ensemble, car tout ce qui est écrit sur un SSD est écrit dans son miroir.
Ainsi, en termes d'écriture sur un ensemble RAID 5 par rapport à un ensemble RAID 10 avec le même nombre de disques, les SSD de l'ensemble RAID 5 recevront moins d'écritures. Et cela reste vrai même si vous augmentez le nombre de SSD dans l'ensemble RAID 10 pour égaliser la capacité utilisable.
shodanshok a abordé la vraie réponse ici. Si vous réservez de l'espace supplémentaire, une "surprovision", l'endurance et la cohérence des performances d'écriture de votre SSD seront toutes deux améliorées au fil du temps, et le manque de prise en charge TRIM devient généralement hors de propos. Réserver cet espace supplémentaire peut être fait aussi simplement que, en commençant par un nouveau SSD, en partitionnant moins que la pleine capacité. La plupart des contrôleurs dans le lecteur traitent l'espace jamais utilisé de la même manière que l'espace réservé et réduisent ainsi considérablement l'amplification d'écriture. Pour le démarrage et le système d'exploitation, 10% d'espace réservé est probablement suffisant. Pour les lecteurs souvent réécrits, augmentez cet espace.