Première publication sur TECHNET le 11 août 2017

Hi ! Je suis Cosmos. Suivez-moi sur Twitter @cosmosdarwin.

Contexte

Storage Spaces Direct dans Windows Server 2016 et Windows Server 2019 dispose d’un cache intégré, persistant, en lecture et en écriture pour maximiser les performances de stockage. Vous pouvez tout lire à ce sujet à la page Comprendre le cache dans Storage Spaces Direct . Dans les déploiements all-flash, les disques NVMe font généralement office de cache pour les disques SSD SATA/SAS ; dans les déploiements hybrides, les disques SSD NVMe ou SATA/SAS font office de cache pour les disques durs.

Dans tous les cas, les lecteurs de cache serviront l’écrasante majorité des E/S, y compris 100% des écritures. Cela est essentiel pour offrir les performances inégalées de Storage Spaces Direct, que vous mesuriez cela en millions d’IOPS , en Tb/s de débit d’E/S ou en latence constante inférieure à la milliseconde.

Mais rien n’est gratuit : ces lecteurs de cache sont susceptibles de s’user rapidement.

Revue : Qu’est-ce que l’usure de la flash

Les disques durs solides d’aujourd’hui sont presque universellement composés de flash NAND, qui s’use à l’usage. Chaque cellule de mémoire flash ne peut être écrite qu’un nombre limité de fois avant de devenir peu fiable. (Il y a de nombreux grands écrits en ligne qui couvrent tous les détails sanglants – y compris sur Wikipedia .)
Vous pouvez observer ce phénomène sous Windows en regardant le compteur de fiabilité Wear dans PowerShell :
PS C:\> Get-PhysicalDisk | Get-StorageReliabilityCounter | Select Wear
Voici la sortie de mon ordinateur portable – mon SSD est usé à environ 5% après deux ans.

Note : tous les disques ne rapportent pas précisément cette valeur à Windows. Dans certains cas, le compteur peut être vide. Vérifiez auprès de votre fabricant s’il dispose d’un outil propriétaire que vous pouvez utiliser pour récupérer cette valeur.
Généralement, les lectures n’usent pas les flashs NAND.

Quantifier l’endurance des flashs

Mesurer l’usure est une chose, mais comment prédire la longévité d’un SSD ?

L' »endurance » de la flash est couramment mesurée de deux façons :

  • Écritures du disque par jour (DWPD)
  • Téraoctets écrits (TBW)

Les deux approches sont basées sur la période de garantie du fabricant pour le disque, sa soi-disant « durée de vie ».

Ecritures sur le disque par jour (DWPD)

Les écritures sur le disque par jour (DWPD) mesurent combien de fois vous pourriez écraser la taille totale du disque chaque jour de sa vie. Par exemple, supposons que votre disque soit de 200 Go et que sa période de garantie soit de 5 ans. Si son DWPD est de 1, cela signifie que vous pouvez y écrire 200 Go (sa taille, une fois) chaque jour pendant les cinq prochaines années.

Si vous multipliez cela, cela fait 200 Go par jour × 365 jours/an × 5 ans = 365 To d’écritures cumulées avant que vous ne deviez peut-être le remplacer.

Si son DWPD était de 10 au lieu de 1, cela signifierait que vous pouvez y écrire 10 × 200 Go = 2 To (sa taille, dix fois) chaque jour. Corrélativement, cela représente 3 650 To = 3,65 PB d’écritures cumulées sur 5 ans.

Téraoctets écrits (TBW)

Les téraoctets écrits (TBW) mesurent directement la quantité que vous pouvez écrire de manière cumulative dans le disque pendant sa durée de vie. Essentiellement, il inclut simplement la multiplication que nous avons faite ci-dessus dans la mesure elle-même.
Par exemple, si votre disque est évalué à 365 TBW, cela signifie que vous pouvez y écrire 365 TB avant de devoir le remplacer.
Si sa période de garantie est de 5 ans, cela revient à 365 TB ÷ (5 ans × 365 jours/an) = 200 Go d’écriture par jour. Si votre disque dur avait une taille de 200 Go, cela équivaut à 1 DWPD. De même, si votre disque était évalué à 3,65 PBW = 3 650 TBW, cela équivaut à 2 TB d’écritures par jour, soit 10 DWPD.
Comme vous pouvez le voir, si vous connaissez la taille du disque et la période de garantie, vous pouvez toujours passer de DWPD à TBW ou vice-versa avec quelques simples multiplications ou divisions. Les deux mesures sont vraiment très similaires.

Quelle est la différence ?

La seule différence réelle est que le DWPD dépend de la taille du lecteur alors que le TBW ne le fait pas.
Par exemple, considérons un SSD qui peut prendre 1 000 To d’écritures sur sa durée de vie de 5 ans.
Supposons que le SSD soit de 200 Go :
1 000 To ÷ (5 ans × 365 jours/an × 200 Go) = 2,74 DWPD
Supposons maintenant que le SSD soit de 400 Go :
1 000 To ÷ (5 ans × 365 jours/an × 400 Go) = 1,37 DWPD
Le DWPD résultant est différent ! Qu’est-ce que cela signifie ?
D’une part, le plus grand disque de 400 Go peut effectuer exactement les mêmes écritures cumulées pendant sa durée de vie que le plus petit disque de 200 Go. En regardant le TBW, c’est très clair – les deux disques sont évalués pour 1 000 TBW. Mais si l’on regarde la DWPD, le disque le plus grand semble avoir une endurance deux fois moindre ! Vous pourriez argumenter que parce que sous la même charge de travail, il aurait des performances « identiques », l’utilisation du TBW est meilleure.
D’un autre côté, vous pourriez faire valoir que le disque de 400 Go peut fournir un stockage pour une plus grande charge de travail parce qu’il est plus grand, et donc que ses 1 000 TBW se répartissent plus finement, et qu’il a vraiment juste la moitié de l’endurance ! Par ce raisonnement, l’utilisation du DWPD est meilleure.

La ligne de fond

Vous pouvez utiliser la mesure que vous préférez. Il est presque universel de voir les deux TBW et DWPD apparaître sur les feuilles de spécifications des lecteurs aujourd’hui. Selon vos hypothèses, il existe des arguments convaincants pour l’un ou l’autre.

Recommandation pour Storage Spaces Direct

Notre recommandation minimale pour Storage Spaces Direct est indiquée sur la page des exigences matérielles. À partir de mi-2017, pour les lecteurs de cache :

    • Si vous choisissez de mesurer en DWPD, nous recommandons 3 ou plus.
    • Si vous choisissez de mesurer en TBW, nous recommandons 4 TBW par jour de vie. Les fiches techniques fournissent souvent le TBW de manière cumulative, que vous devrez diviser par sa durée de vie. Par exemple, si votre disque a une période de garantie de 5 ans, alors 4 TB × 365 jours/an × 5 ans = 7 300 TBW = 7,3 PBW au total.

Souvent, l’une de ces mesures s’avère être légèrement moins stricte que l’autre.

Vous pouvez utiliser la mesure que vous préférez.

Il n’y a pas de recommandation minimale pour les disques de capacité.

Addendum : Amplification d’écriture

Vous pouvez être tenté de raisonner sur l’endurance à partir des chiffres d’IOPS, si vous les connaissez. Par exemple, si votre charge de travail génère (en moyenne) 100 000 IOPS qui sont (en moyenne) 4 KiB chacun dont (en moyenne) 30% sont des écritures, vous pouvez penser :
100 000 × 30% × 4 KiB = 120 MB/s d’écritures
120 MB/s × 60 secs/min × 60 min/heure × 24 heures = environ 10 TBW/jour
Si vous avez quatre serveurs avec deux lecteurs de cache chacun, cela fait :
10 TBW/jour ÷ (8 lecteurs de cache au total) = environ 1,25 TBW/jour par lecteur
Intéressant ! Moins de 4 TBW/jour !
Malheureusement, c’est un calcul imparfait car il ne tient pas compte de l’amplification d’écriture.
L’amplification d’écriture, c’est lorsqu’une écriture (au niveau de la couche utilisateur ou application) devient plusieurs écritures (au niveau de la couche dispositif physique). L’amplification d’écriture est inévitable dans tout système de stockage qui garantit la résilience et/ou la cohérence des pannes. L’exemple le plus flagrant dans Storage Spaces Direct est le miroir à trois voies : il écrit tout trois fois, sur trois disques différents.
Il existe également d’autres sources d’amplification d’écriture : les travaux de réparation génèrent des entrées-sorties supplémentaires ; la déduplication des données génère des entrées-sorties supplémentaires ; le système de fichiers, et de nombreux autres composants, génèrent des entrées-sorties supplémentaires en persistant leurs métadonnées et leurs structures de journal ; etc. En fait, le disque lui-même génère une amplification de l’écriture à partir d’activités internes telles que la collecte des déchets ! (Si vous êtes intéressé, consultez la méthodologie standard JESD218 pour savoir comment prendre en compte ce facteur dans les calculs d’endurance).
C’est tout à fait nécessaire et bon, mais cela rend difficile de dériver l’activité d’E/S au niveau du lecteur en bas de la pile de l’activité d’E/S au niveau de l’application en haut de la pile d’une manière cohérente. C’est pourquoi, sur la base de notre expérience, nous publions la recommandation minimale de DWPD et TBW.
Dites-nous ce que vous en pensez ! 🙂

admin

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

lg