Propriétés zfs recommandées pour les points de montage de données blockchain

4

Les technologies basées sur les chaînes de blocs nécessitent de grands ensembles de données pour fonctionner. Il est judicieux de les placer sur un volume / jeu de données séparé au cas où le système de fichiers les prend en charge. J'utilise ZFS et je me demandais s'il est recommandé de définir des propriétés sur l'ensemble de données qui ne contient que des données blockchain. Est-ce bien compressible (si oui, avec algorithme)? Est-ce déduplicable? Quel est l’inconvénient de la lecture (par exemple, les anciennes données sont-elles accédées souvent et doivent donc être décompressées en permanence)?

Je suppose qu'ils ont tous des structures de données similaires, mais sinon, concentrons-nous sur ce que bitcoin stocke dans ~/.bitcoin.

J'utilise ZFS 7.x sur Ubuntu 17.10.

Karl Richter
la source

Réponses:

1

En octets, le format sur disque de la blockchain Bitcoin est principalement constitué de signatures et de hachages.

Dans ZFS ou tout autre système de stockage, il existe trois techniques principales d’efficacité des octets:

  1. Compression: Les hachages et les signatures ressemblent généralement à des nombres aléatoires, il sera donc difficile d'obtenir beaucoup de gains ici.
  2. Déduplication: Dedup nécessite des correspondances de blocs exactes pour fonctionner, mais je ne vois aucune raison pour lesquelles elles existeraient dans la blockchain - je pense que chaque écriture sera unique.
  3. Snapshoting / cloning: Cela n’aide que si vous avez besoin de plusieurs copies inscriptibles de la blockchain.

Pour l’essentiel, ma réponse est que ZFS (et d’autres systèmes de stockage de fichiers et de blocs) ne peut pas vraiment vous aider… à moins de stocker plusieurs copies de la chaîne de blocs.

Si vous avez plusieurs copies pour une raison quelconque, vous pouvez probablement tirer des avantages considérables de la déduplication, car chaque nœud IIUC doit éventuellement stocker la même chaîne de blocs. Vous pouvez utiliser un serveur NFS en utilisant ZFS et monter des clones du même système de fichiers partout où vous avez besoin d'une copie de la blockchain. Cela rendrait également la création de nouvelles copies beaucoup plus rapide, car vous pouvez immédiatement créer un clone inscriptible des données au lieu de scp les données autour.

Dan
la source