Les performances record de Sui en matière de transactions par seconde sont en partie dues à une construction mathématique, le graphe acyclique dirigé (DAG). Cette construction accélère les transactions réseau en les traitant de la manière la plus efficace, plutôt que selon une progression linéaire du premier arrivé, premier servi.
La combinaison de la nature non linéaire d'un DAG avec une blockchain, un registre distribué conçu pour garantir l'intégrité des données, allie les vertus de deux technologies. En tant que réseau blockchain, Sui préserve l'historicité et la garde des objets de données, tandis que son système de consensus basé sur DAG rend la manipulation de ces objets de données plus agile.
Qu’est-ce qu’un DAG ?
Un DAG est un type de structure de données différent de la structure en chaîne linéaire des blockchains traditionnelles. Contrairement aux blockchains, qui sont constituées de blocs reliés entre eux de manière linéaire, les DAG ressemblent davantage à un réseau de nœuds interconnectés. Pour comprendre les DAG, décomposons d'abord l'acronyme dans l'ordre inverse.
Dans le contexte de la technologie des registres distribués, une base de données graphique organise les données à l'aide de structures interconnectées, semblables à un réseau de relations. Les relations entre chaque saisie de données individuelle ou transaction avec d'autres sont utilisées pour former un réseau d'informations basé sur des relations causales. Grâce à cette approche, les relations transactionnelles et les dépendances complexes sont capturées dans le réseau.
L'ajout d'acyclique à la définition signifie qu'il n'y a aucun moyen de créer une boucle ou un cycle dans le grand livre ou la base de données. En d’autres termes, il est impossible de créer un chemin dans la base de données menant à une situation dans laquelle une transaction antérieure s’appuie sur une transaction ultérieure. Cette propriété garantit que l'information circule dans un sens unique, nous amenant à la dernière partie de l'acronyme, dirigée. Étant un graphe orienté, chaque relation a une direction définie indiquant le flux d'informations au sein de la base de données. La nature dirigée permet un flux de données clair et sans ambiguïté, crucial pour maintenir l’intégrité et faciliter le traitement efficace des transactions.
Les transactions au sein d'un DAG ont des relations explicites avec d'autres qui créent une structure de type Web. Notez qu'à terme, chaque transaction est observée par tous les nœuds et, par souci de simplicité, cette image montre qu'une transaction n'est observée que par un seul nœud.
En résumé, un DAG est une base de données structurée comme un réseau d'informations ou de transactions interconnectées, liées entre elles en fonction de leurs dépendances, formant un graphique qui se développe à chaque nouvelle transaction.
Blockchains et DAG
Les blockchains regroupent généralement un groupe de transactions dans un bloc qui passe ensuite par un processus de consensus en tant qu'entité unique. Les blocs sont reliés entre eux de manière linéaire, ce qui nécessite que l’état du réseau change progressivement, bloc par bloc. D'un autre côté, les transactions au sein d'un DAG sont capables d'atteindre un consensus de manière indépendante, en contournant le processus de regroupement de nombreuses transactions en un bloc pour le processus de consensus.
Dans une blockchain, tous les validateurs de réseau ont un état de réseau convenu à partir duquel ils travaillent tous. Les validateurs évaluent un seul groupe de transactions en même temps et ne peuvent progresser tant qu'une grande majorité n'est pas parvenue à un accord sur la validité du bloc. Pour qu’un bloc soit considéré comme valide et cimenté dans la blockchain, toutes les transactions au sein de ce bloc doivent être valides. Si une seule transaction au sein du bloc n'est pas valide, le bloc entier est supprimé et doit être recréé sans la transaction invalide. Parvenir à un consensus dans une blockchain nécessite que les validateurs opèrent en étroite collaboration, approuvant les transactions bloc par bloc.
De la même manière que le consensus est obtenu dans une blockchain, les transactions au sein d'un DAG parviennent à un consensus une fois approuvées par une grande majorité des validateurs du réseau. Une différence clé réside dans le fait que chaque validateur au sein d’un DAG possède un sous-ensemble différent de l’état du réseau. En d’autres termes, l’état complet du réseau n’est pas stocké dans chaque validateur mais ne peut être observé qu’en cumulant la compréhension du réseau par chaque validateur.
Il n'y a pas de bloc de transactions validé en même temps par tous les validateurs, mais les transactions individuelles se propagent à travers le réseau en obtenant les signatures de validateurs individuels qui connaissent l'état du réseau nécessaire pour valider la transaction. Une fois que la transaction a obtenu les signatures d'une grande majorité des validateurs du réseau, elle a atteint un consensus et est considérée comme finalisée.
Grâce à cette structure, l'utilisation d'un DAG pour la propagation et le consensus des transactions permet de confirmer les transactions de manière asynchrone et simultanée, offrant une approche plus flexible et évolutive par rapport aux blockchains.
Du DAG à la blockchain Sui
Sui utilise un DAG pour la propagation des transactions et le consensus, puis, dans un processus distinct, ordonne les transactions vers des points de contrôle, qui sont similaires à des blocs. Les points de contrôle sont reliés entre eux et ordonnés de manière linéaire, semblable à la structure d'une blockchain typique. La principale différence entre la structure blockchain de Sui est que les transactions regroupées en points de contrôle sont déjà finalisées, contrairement aux structures blockchains typiques qui regroupent les transactions non encore finalisées en blocs.
La principale différence entre la structure blockchain de Sui est que les transactions regroupées en points de contrôle sont déjà finalisées, contrairement aux structures blockchains typiques qui regroupent les transactions non encore finalisées en blocs.
Relier tout cela ensemble
L'approche innovante de Sui combine les meilleures fonctionnalités des DAG et des blockchains, créant un réseau offrant une vitesse et une flexibilité inégalées. En utilisant un DAG pour la propagation et le consensus des transactions, Sui garantit que les transactions peuvent être confirmées de manière asynchrone et simultanée, permettant ainsi un système plus évolutif et plus efficace que les blockchains traditionnelles. Cependant, pour maintenir l'intégrité et l'ordre des informations historiques, Sui utilise un processus distinct pour organiser les transactions en points de contrôle, semblables aux blocs d'une blockchain.
Ces points de contrôle sont ensuite reliés entre eux et ordonnés de manière linéaire, fournissant ainsi une structure familière pour stocker et accéder aux données historiques. Contrairement aux blockchains traditionnelles où les transactions sont regroupées en blocs avant consensus, dans Sui les transactions incluses dans les points de contrôle sont déjà finalisées, offrant une approche rationalisée et efficace de la validation et du stockage des transactions.
Cette architecture hybride permet à Sui d'exploiter les avantages des DAG et des blockchains, créant ainsi une plate-forme robuste et adaptable pour les applications décentralisées et les contrats intelligents.
Remarque : Ce contenu est uniquement destiné à des fins éducatives et informatives générales et ne doit pas être interprété ou invoqué comme une approbation ou une recommandation d'acheter, de vendre ou de détenir un actif, un investissement ou un produit financier et ne constitue pas un conseil financier, juridique ou fiscal. .