Le codage à effacement (EC) est l'une des méthodes les plus connues pour la protection des données, en partie en raison de son efficacité, car une plus grande partie du disque est disponible pour les données par rapport aux stratégies RAID et de mise en miroir.

L'un des principaux avantages du codage à effacement est la flexibilité qu'il offre. Les administrateurs informatiques peuvent décider comment trouver le bon équilibre entre les performances et le temps de récupération après une panne de support physique et le nombre de pannes simultanées dont ils ont besoin pour que le système puisse résister.

Codage d'effacement est plus facile à comprendre avec des exemples, dont nous discuterons plus en détail ci-dessous. Mais vous vous demandez peut-être certaines choses, par exemple qu'est-ce que le codage d'effacement ? Comment se compare-t-il aux schémas de protection des données RAID et de mise en miroir ? Et quels sont les avantages et les inconvénients du codage par effacement par rapport à d'autres méthodes de protection des données, telles que l'entrelacement RAID et la mise en miroir ? Ce sont toutes des questions importantes que nous allons éclaircir, mettant votre entreprise dans la meilleure position pour protéger vos données.

Qu'est-ce que le codage d'effacement ?

Erasure Coding est une méthode de protection des données de stockage qui s'appuie sur des mathématiques avancées pour permettre au logiciel de système de fichiers de régénérer les données manquantes à l'aide d'éléments de données connus appelés blocs de parité. Comme nous l'expliquerons ci-dessous, le codage d'effacement offre une protection supérieure des données à une copie miroir, principalement parce qu'il ne nécessite pas une deuxième copie complète des données, mais peut restaurer toute partie manquante.

Codage à effacement vs RAID : avantages et inconvénients

Pour aider à expliquer en quoi le codage à effacement est supérieur aux autres méthodes de protection des données, il aide à comprendre les différentes formes de protection des données ainsi que leurs avantages et inconvénients.

Réseau redondant de disques peu coûteux (RAID)

Le RAID existe depuis longtemps. La configuration de protection des données la plus basique est RAID 1, également appelée Mirroring. Comme son nom l'indique, la mise en miroir consiste à enregistrer des données simultanément sur deux (ou plusieurs) disques, en faisant ainsi des copies identiques, des images miroir, pour ainsi dire.

Dans une configuration de mise en miroir RAID 1, étant donné que chaque copie réside sur un disque distinct, les données sont récupérables à partir de l'« image miroir » en cas de défaillance du disque principal d'un ensemble. La mise en miroir est simple à mettre en œuvre, mais elle présente certains inconvénients. Étant donné que la mise en miroir nécessite au moins une copie complète des données, elle représente un gaspillage en termes d'espace requis pour la protection des données. De plus, la mise en miroir ne peut gérer qu'un seul panne de disque à la fois, ce qui n'est généralement pas une protection suffisante pour de nombreux cas d'utilisation, en particulier lorsque la taille des clusters augmente.

Au-delà de la mise en miroir, la norme RAID propose d'autres configurations pour optimiser les performances, la protection ou les deux. Une option courante est le RAID 5 ou l'entrelacement de disque avec parité qui améliore l'efficacité et les performances de lecture par rapport à la mise en miroir. Cependant, ces configurations RAID plus avancées peuvent devenir extrêmement complexes et difficiles à gérer et à maintenir. Et, en cas de défaillance d'un composant, les temps de reconstruction avec RAID peuvent être excessivement lents, ce qui affecte considérablement les performances pour les utilisateurs.

Lorsqu'ils envisagent le RAID pour la protection des données de stockage, le RAID ne peut pas tout faire et conduit souvent à un choix difficile lors de la création de configurations RAID : les administrateurs informatiques doivent-ils choisir entre une protection des données solide, des performances ou mieux efficacité de stockage? La réponse est qu'ils tout vouloir, mais RAID ne peut pas livrer.

Codage d'effacement

L'architecture Qumulo Core est construite autour de Qumulo Bloc de stockage évolutif (SBS), qui est la couche de base qui permet une protection efficace des données basée sur des blocs avec un codage d'effacement.

Le codage d'effacement est entièrement différent du RAID et résout les défauts du RAID. Contrairement à l'entrelacement RAID ou à la mise en miroir, le codage d'effacement est une protection évolutive pour un stockage de données massif, beaucoup plus performant, plus configurable et plus économe en espace, permettant aux clusters une croissance illimitée tout en maintenant une protection et une réactivité complètes des données.

Le codage à effacement utilise des mathématiques avancées (c'est-à-dire la formule de Reed-Solomon, dans ce cas) pour permettre la régénération des données manquantes à partir de données connues (blocs de parité).

Ainsi, contrairement à la mise en miroir RAID qui nécessite une seconde copie complète, le codage par effacement permet une plus grande efficacité, ne nécessitant qu'un seul bloc de parité pour trois blocs de données (appelé codage 3,2).

Codage d'effacement expliqué (exemples)

Le codage à effacement est plus facile à comprendre avec des exemples. Voici notre exemple d'encodage 3,2 :

codage d'effacement expliqué

Dans un codage 3,2, trois blocs (m = 3) sont répartis sur trois dispositifs physiques distincts. Les blocs 1 et 2 contiennent les données utilisateur que nous voulons protéger (n = 2), et le troisième est appelé bloc de parité. Le contenu du bloc de parité est calculé à l'aide de l'algorithme de codage d'effacement.

Étant donné que chaque bloc est écrit sur un lecteur distinct, l'un des trois lecteurs peut tomber en panne et les informations stockées dans les blocs 1 et 2 sont toujours en sécurité car elles peuvent être recréées à partir du bloc de parité.

Comment fonctionne le codage d'effacement

Voici comment cela fonctionne. Si le bloc de données 1 est disponible, le système le lit simplement. Il en est de même pour le bloc de données 2. Cependant, si le bloc de données 1 est manquant, le système de codage d'effacement lit le bloc de données 2, plus le bloc de parité, et reconstruit la valeur du bloc de données 1.

De même, si le bloc de données 2 réside sur le disque défaillant, le système lit le bloc de données 1 et le bloc de parité. SBS s'assure toujours que les blocs sont sur des broches différentes afin que le système puisse lire à partir des blocs simultanément.

Un codage 3,2 a une efficacité de 2/3 (n/m), soit 67%. Bien qu'il soit meilleur que l'efficacité de 50% de la mise en miroir, l'encodage 3,2 ne peut toujours protéger que contre une seule panne de disque.

Le codage d'effacement offre une protection des données configurable

Le codage d'effacement peut être configuré pour optimiser les performances, optimisé pour le temps de récupération dans le cas d'un support défaillant, ou optimisé pour plus de résilience — jusqu'à quatre disques défaillants ou quatre nœuds défaillants à la fois. Généralement, une protection accrue se fait au détriment de la capacité utilisable.

Au minimum, Qumulo utilise l'encodage 6,4, qui stocke un tiers de plus de données utilisateur dans le même espace que la mise en miroir, et a la capacité de tolérer deux pannes de disque au lieu d'une seule comme la mise en miroir ou 3,2. Dans une configuration 6,4, même si deux blocs contenant des données utilisateur sont indisponibles, le système n'a besoin de lire que les deux blocs de données restants et les deux blocs de parité pour récupérer les données manquantes.

Que signifie tout cela?

Fonctionnant au niveau du bloc plutôt qu'au niveau du fichier comme les autres plates-formes de fichiers, le codage d'effacement Qumulo Core permet non seulement de protéger efficacement les données sans avoir à créer une copie 1:1 de l'ensemble du volume de données, mais aussi de la taille des fichiers. n'a aucun impact sur les temps d'encodage et de récupération. Que les fichiers soient de taille gigantesque ou mini, les performances d'encodage et de récupération sont plus que rapides, elles sont également fiables.

D'autres systèmes peuvent prendre de quelques heures à plusieurs jours, voire plus, pour se remettre d'un événement en fonction de la combinaison de tailles de fichiers stockées sur le cluster. Qumulo récupère rapidement et de manière fiable sans affecter les performances, quelle que soit la combinaison de données de fichiers stockées. Cela permet également aux clients Qumulo de tirer parti des disques les plus gros et les plus économiques du marché sans risque.

En savoir plus dans la partie 2 !

Dans la prochaine entrée de cette série en 2 parties sur le codage par effacement, nous expliquons comment mettre en œuvre le codage d'effacement dans les systèmes de stockage pour l'ère numérique moderne, avec une évolutivité massive.

Note de l'éditeur : initialement publié le 3 novembre 2021, cet article a été mis à jour pour plus d'exactitude et d'exhaustivité.

Testez gratuitement Qumulo

Testez gratuitement Qumulo

Explorez un environnement Qumulo entièrement fonctionnel, directement dans votre navigateur.

Try Demo