Chaincode et code client Chaincode

1. Architecture des données et des transactions

Pour comprendre comment interroger et mettre à jour la chaîne de blocs depuis le chaincode, nous allons détailler les fonctions générales CreateDonor et QueryByKey.

Le code complet du chaincode de l’application de dons que nous utilisons ici se trouve à l’adresse : https://github.com/aws-samples/non-profit-blockchain/blob/master/ngo-chaincode/src/ngo.js

Nous avons cependant besoin de revenir quelques instants au niveau du registre pour en comprendre deux de ses aspects dans Hyperledger Fabric : les données et les transactions. Transaction

Avec notre application de dons, nous avons des donateurs, des organisations et des dons. Il nous faut donc enregistrer la liste de ces donateurs et organisations (les données), et l’ensemble de dons (les transactions).

Cependant, on pourrait débattre du fait que la création d’un nouveau donateur, par exemple, est une transaction. Pourquoi donc enregistrer ce donateur en tant que donnée séparée de la transaction qui l’a créée ?

Pour deux raisons assez simples à comprendre :

  • Pour simplifier le développement. Il est en effet, a priori, plus simple d’interroger une base de données à la recherche d’une valeur particulière plutôt que de parcourir un ensemble de transactions à la recherche de celle qui a créé telle donnée...

Pour consulter la suite, découvrez le livre suivant :
couv_EIBLOAWS.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Introduction
Suivant
Hyperledger Explorer