Le processus d'initialisation de Raid
Jan 28, 2022Le système RAID est un moyen efficace de protéger les données des données stockées. Dans le processus de création RAID, il y a souvent un processus d'initialisation du système très long. Pourquoi y a-t-il une telle opération dans le processus d'initialisation RAID ? Quels aspects aura cette opération sur SSD ? Analysons et étudions le processus d'initialisation RAID du point de vue du développement technologique.
La structure organisationnelle de base d'une matrice RAID traditionnelle est que tous les disques ajoutés à un groupe RAID sont divisés en une série de tranches en fonction de leurs adresses LBA. Ces tranches sont appelées Stripe Units. Les unités Stripe correspondant aux mêmes adresses LBA sur différents disques sont organisées en Stripe. Le codage de toutes les données dans une seule bande, tel que RAID6 produisant deux blocs de données codés P et Q, permet aux deux disques de données d'être corrompus en même temps.
Par conséquent, dans le système RAID, toutes les données de la bande doivent respecter les règles de codage et d'algorithme déc, c'est-à-dire que toutes les données de la bande peuvent générer des données de codage selon certaines règles, et les données de codage sont les mêmes que les données de codage stockées dans la bande. Cette situation est appelée les données dans cette bande. Lorsqu'un disque tombe en panne, les blocs de données perdus peuvent être récupérés par les données codées stockées dans la bande.
Si les données d'une bande sont incohérentes, c'est-à-dire que le résultat de codage obtenu par les données de la bande n'est pas le même, une fois qu'un disque tombe en panne, le bloc de données manquant ne peut pas être correctement récupéré par les données codées stockées dans la bande. Par conséquent, une bande d'incohérence de données entraînera des problèmes d'exactitude des données lorsque l'erreur se produit.
Lors de la création d'un système RAID, le disque du groupe RAID peut être soit un nouveau disque, soit un disque de données qui a déjà été utilisé, où toutes les données ne seront pas nulles. Dans ce cas, les bandes de données construites avec ces disques ne doivent pas répondre au besoin de cohérence des données. C'est-à-dire que les données de codage dans chaque bande calculées selon certaines règles sont incompatibles avec les données de codage dans la bande. De telles bandes de données incohérentes introduiront un grand risque pour le problème de l'exactitude des données RAID.
Pour cette raison, lors de la création d'un RAID, vous devez envisager d'initialiser toutes les bandes du système pour assurer la cohérence des données dans les bandes. L'initialisation de la bande peut généralement être résolue de deux manières :
1. Initialise toutes les bandes du système RAID en écrivant le zéro total. Toutes les données de la bande zéro, ses données de contrôle sont également nulles. Par conséquent, des données entièrement à zéro peuvent garantir la cohérence de la bande.
2. Vérifiez toutes les bandes et mettez à jour les données de contrôle dans les bandes pour obtenir la cohérence des données de bande.
Lorsqu'un système RAID est initialisé, les données de toutes les bandes deviennent cohérentes. Le processus d'initialisation du système RAID est un processus très long, principalement en raison de la nécessité d'initialiser toutes les bandes du système. L'équilibre des performances entre les E/S de l'utilisateur frontal, de sorte que l'initialisation du système RAID est souvent un processus d'exécution en arrière-plan, qui durera longtemps et affectera les performances des applications frontales.
Pour SSDS, le processus d'initialisation du système RAID introduit également d'autres problèmes. Lors de l'initialisation du système, les données doivent être écrites sur SSDS, peu importe en mode d'écriture zéro ou de mise à jour des données de parité. Ce processus entraîne un agrandissement inutile de l'écriture des données. Avant que les données utilisateur ne soient écrites, une table de mappage de données est établie à l'intérieur du SSD via l'initialisation. La durée de vie et les performances des SSD sont réduites. Par conséquent, un système RAID pour SSDS doit être optimisé pour le processus d'initialisation du système, qui est une caractéristique spéciale que le RAID traditionnel ne prend pas en compte. Par conséquent, les baies RAID traditionnelles ne peuvent pas être déployées directement sur les SSD, ce qui affecte la durée de vie et les performances des SSD.
Les systèmes RAID utilisent la répartition pour protéger les données, mais une série de problèmes sont également introduits dans le processus de protection des données par répartition. L'initialisation du système est un problème typique de cohérence de bande. Un bon système de protection des données RAID résoudra ce problème lors du processus de conception. Par exemple, EMC Data Domain RAID n'a pas le processus d'initialisation du système, bien sûr, il doit coopérer avec le système de fichiers et a fait beaucoup d'optimisation dans la distribution des données des bandes RAID.