Passer au contenu

Le principe de base

À la base de PeerStorage, il faut un système permettant de stocker des données de façon fiable sur des appareils qui se déconnectent sans cesse. Ci-après une illustration d’un moyen de créer un « block device » virtuel à partir d’appareils disparates mettant chacun à disposition du réseau une portion de sa propre mémoire. Chaque carré est un « data store ». Il est composé de :
  • Cellules grises, elles contiennent des bits de données.
  • Cellules colorées, elles contiennent des bits de parité.
Essayez par vous-mêmes pour comprendre comment ça fonctionne :
  • Cliquez sur les cellules grises pour changer des bits de données. Observez comment les bits de parité changent également.
  • Cliquez sur des cellules colorées pour détruire un « store ». Observez comment les données sont reconstruites de rien.
  • Essayez de changer des valeurs pendant qu’on « store » se reconstruit. Remarquez que vos changements sont pris en compte.
  • Essayez de détruire plus d’un « store » à la fois. Si des bits sont perdus ils sont remplacées par ‘-‘.
  • Expérimentez avec des tailles différentes. Observez comment le ratio de redondance varie (cellules totales/cellules grises).
Reconstruire tous les "stores"
Changer la taille du tableau
Changer la distribution de la parité

Un simple calcul de probabilités à partir des hypothèses suivantes :

  • on passe à 3 dimensions au lieu des 2 de la démonstration,
  • le côté du « cube » fait 11 « data stores », il y en a donc au total 1331,
  • le ratio de redondance est de 1,33, c’est à dire 1331/1000,
  • chaque minute, 10% des « data stores » sont déconnectés,
  • il faut 5 secondes pour reconstruire un « data store ».

Sur un an, la probabilité de perdre une donnée est de un sur dix millions (10-7).