Il consenso a livello di transazione di Shardeum, lo sharding dinamico dello stato e la scalabilità lineare garantiranno che la rete raggiunga non solo l'esecuzione di transazioni parallele ma anche atomiche e tra shard.

Cos'è la componibilità in Blockchain?

Nota: abbiamo un blog separato dedicato alla discussione su cosa sia la componibilità, soprattutto dal punto di vista blockchain. Tuttavia, riassumiamolo qui per facilitare la comprensione e il collegamento dei vari punti di discussione che tratteremo in questo blog sull'importanza della componibilità atomica e cross-shard nelle reti blockchain pubbliche.

La componibilità è un concetto potente nella blockchain che consente agli sviluppatori di combinare e integrare contratti intelligenti, applicazioni decentralizzate (dapp) e reti disparate per creare sistemi innovativi e complessi. Ciò incoraggia un rapido sviluppo, poiché gli elementi costitutivi esistenti possono essere riutilizzati, riducendo tempo e fatica.

Fonte: Come funziona la componibilità?

Anche se questa proposta sembra essere un vantaggio per le piattaforme di contratto intelligente, il suo successo dipende in gran parte dalla robustezza del livello di protocollo sottostante della piattaforma in termini di sicurezza, scalabilità, comunicazione, archiviazione e DX. Mentre la componibilità esamina il funzionamento di un sistema dall’interno e il modo in cui le sue parti possono essere riorganizzate per creare nuove funzioni, il suo successo dipende anche da diversi fattori esterni per rafforzarne l’usabilità, come controlli di sicurezza e test approfonditi. Ciò essenzialmente rende la “componibilità” una caratteristica che determina il successo o il fallimento di una piattaforma blockchain.

Cos'è l'atomicità nella Blockchain?

Atomicità e componibilità atomica sono strettamente correlate. L'atomicità si riferisce alla natura indivisibile o tutto o niente di una transazione o operazione. In altre parole, ciò significa che una transazione viene eseguita completamente o non viene eseguita affatto, senza alcuno stato parziale o intermedio. Se qualsiasi parte di una transazione fallisce o presenta un errore, verrà eseguito il rollback o il rollback dell'intera transazione, per garantire che il sistema rimanga in uno stato coerente. Vedrai l'atomicità come parte del concetto ACID (Atomicità, Coerenza, Isolamento, Durabilità) in informatica e scienza dei dati.

Fonte: erainnovator.com/acid-properties-in-dbms/

Cos'è la componibilità atomica in Blockchain?

La componibilità atomica si riferisce alla capacità di combinare ed eseguire più operazioni o transazioni in sistemi di database distribuiti come blockchain e DAG in modo che tutte abbiano successo o falliscano insieme, solitamente entro i confini di un singolo frammento o blockchain. Ciò estende il concetto di atomicità alla componibilità delle operazioni nel contesto blockchain.

Analogamente al modo in cui le reti blockchain utilizzano meccanismi di consenso per stabilire accordi riguardanti la validità e l’ordinamento delle transazioni, le blockchain utilizzano meccanismi specializzati come protocolli di messaggistica, coordinatori e routing per sostenere la componibilità in queste reti. Questo è un dettaglio di livello tecnico di cui impareremo di più nella prossima sezione. Tuttavia, a livello funzionale, va sottolineato che le blockchain possono garantire la componibilità atomica solo se hanno una perfetta progettazione/implementazione di meccanismi di consenso, contratti intelligenti, scalabilità, verifica delle transazioni e meccanismi di roll back. In altre parole, devono avere basi solide sotto forma di protocolli e livelli applicativi.

Fonte | Cos’è la componibilità atomica e come funziona la componibilità?

Come accennato in precedenza, la componibilità atomica viene solitamente raggiunta all’interno di una singola partizione, cluster o blockchain. Tuttavia, garantire la componibilità atomica diventa più complesso quando si ha a che fare con più partizioni e stati, come nelle reti di sharding.

Lo sharding è un modo per aumentare la scalabilità dei sistemi distribuiti, come la blockchain, dividendo i dati in blocchi più piccoli e più facili da gestire chiamati shard. Lo sharding non danneggia necessariamente la componibilità, ma può potenzialmente limitare la capacità delle diverse parti del sistema di comunicare e interagire tra loro. Lo sharding introduce complessità nell'architettura e nell'implementazione della rete e spesso richiede meccanismi per la comunicazione e la componibilità tra più partizioni. Lo sharding può anche comportare una distribuzione non uniforme di dati e transazioni tra gli shard a causa della mancanza di progettazione e test ottimali o, in altre parole, di un solido livello di protocollo. Prima di capire come è possibile ottenere la componibilità tra partizioni incrociate, diamo una rapida occhiata a cosa significa il cross-sharding stesso?

Componibilità cross-shard nei sistemi Blockchain

Fonte | Che cos'è la componibilità tra partizioni: l'importanza della componibilità tra partizioni

Nella tecnologia blockchain, lo sharding è un modo per dividere una rete in parti più piccole e più gestibili chiamate frammenti. Ogni frammento contiene una quota dei dati e delle transazioni totali della rete, consentendo un'elaborazione più efficiente e un throughput più elevato. Dividendo la rete in questo modo, i nodi devono solo elaborare i dati negli shard assegnati, riducendo il carico computazionale e migliorando le prestazioni complessive.

La componibilità tra frammenti si riferisce alla capacità di diversi frammenti in una rete blockchain di interagire senza problemi. Poiché ogni frammento funziona in modo indipendente, la componibilità tra frammenti richiede l'implementazione di protocolli e meccanismi come un sistema di account universale, protocolli di messaggistica o l'implementazione di catene laterali o bridge per connettere diversi frammenti. Ciò consentirà di spostare dati e risorse tra shard, oltre a mantenere uno stato coerente su tutti gli shard. Abilitando la componibilità tra frammenti, le reti blockchain possono elaborare più transazioni e ottenere un throughput più elevato senza sacrificare la sicurezza o la decentralizzazione.

Considerazioni chiave per ottenere la componibilità cross-shard nelle reti Blockchain

Transazioni tra shard

Una transazione tra frammenti è una singola transazione che coinvolge più frammenti in una rete blockchain. Queste transazioni sono fondamentali per raggiungere la scalabilità e consentire contratti intelligenti più complessi. Le transazioni tra partizioni richiedono meccanismi per garantire atomicità, coerenza, isolamento e durabilità (ACID) tra le partizioni.

La necessità di componibilità

La componibilità è fondamentale per consentire la componibilità tra shard e garantire interazioni fluide tra contratti intelligenti e transazioni tra shard diversi. Senza componibilità, le reti blockchain si limiteranno a operare all’interno dei loro frammenti, riducendone l’utilità e l’adozione.

Protocollo di commit a due fasi per transazioni tra più partizioni

Il protocollo di commit a due fasi è un meccanismo per garantire l'atomicità nelle transazioni tra partizioni. Questo protocollo prevede che un coordinatore avvii una transazione e comunichi con tutti i frammenti coinvolti per garantire che siano pronti a impegnarsi. Se tutti i frammenti concordano, la transazione viene confermata; in caso contrario, la transazione verrà annullata.

Instradamento delle transazioni tra shard

Il routing è un meccanismo utilizzato per indirizzare le transazioni tra shard allo shard appropriato. Ciò comporta l’identificazione degli shard coinvolti nella transazione e la determinazione del percorso ottimale per eseguire la transazione. Ciò si ottiene tramite tabelle di routing e protocolli di messaggistica che consentono la comunicazione di componibilità tra partizioni tra partizioni.

Coordinatore della componibilità Cross Shard

Il coordinatore gestisce le transazioni tra partizioni e ne garantisce l'atomicità, la coerenza, l'isolamento e la durabilità. Facilitano la comunicazione tra gli shard coinvolti in una transazione e sono fondamentali per ottenere la componibilità tra shard. Il coordinatore avvia le transazioni tra frammenti, comunica con tutti i frammenti coinvolti per garantire che siano pronti per il commit ed esegue un protocollo di commit in due fasi per garantire l'atomicità. I coordinatori mantengono inoltre le informazioni sullo stato delle transazioni e comunicano con altri coordinatori se le transazioni si estendono su più reti blockchain.

Tieni presente che i coordinatori possono anche introdurre la centralizzazione nella rete blockchain, riducendo la sicurezza e la decentralizzazione. Richiedono inoltre risorse informatiche aggiuntive e possono introdurre latenza nell’elaborazione delle transazioni. Inoltre, può verificarsi un singolo punto di errore se il coordinatore fallisce o viene compromesso.

Garantire la componibilità tra gli shard

Per garantire o abilitare la componibilità tra i frammenti in una rete blockchain, è essenziale creare protocolli e meccanismi per la comunicazione e il trasferimento di risorse tra diversi frammenti. Ciò comporta l’implementazione di meccanismi di instradamento per indirizzare le transazioni agli shard appropriati e la creazione di un sistema di account universale a cui tutti gli shard possano accedere.

Inoltre, richiede l'uso di protocolli di messaggistica, come la comunicazione inter-shard (ISC), per consentire la comunicazione tra gli shard. Mantenere uno stato coerente è importante anche per garantire la coerenza tra tutti gli shard coinvolti.

Gestione dei metadati nelle transazioni tra shard

Nelle transazioni tra partizioni, i metadati si riferiscono alle informazioni relative alla transazione ma non incluse nel payload. I metadati possono includere lo stato della transazione, informazioni di routing e altri dati necessari per garantire atomicità, coerenza, isolamento e durabilità nelle transazioni tra partizioni.

La gestione dei metadati implica la progettazione di protocolli e meccanismi per archiviare, accedere e aggiornare i metadati su tutti i frammenti. Ciò include l’implementazione di un sistema di archiviazione dei metadati accessibile a tutti i frammenti coinvolti, la definizione di standard e formati di metadati e la garanzia che i metadati siano protetti e protetti per impedire l’accesso o la manipolazione non autorizzati.

Shardeum raggiunge l'esecuzione di transazioni parallele con componibilità atomica e tra shard

A proposito di Shardeum

Shardeum è una rete blockchain di livello 1 con una piattaforma di contratto intelligente basata su EVM che si adatta linearmente per mantenere costi di transazione permanentemente bassi, insieme a decentralizzazione e alta sicurezza. Le transazioni sono ordinate in base all'orario su Shardeum (primo arrivato, primo servito) per mantenere la coerenza cronologica. La verifica e il consenso delle transazioni vengono eseguiti individualmente, ovvero a livello di transazione, non a livello di blocco come si vede nelle tipiche reti blockchain. Shardeum utilizza un meccanismo di consenso unico/combinato — Proof of Quorum e Proof of Stake.

Sebbene sappiamo come funziona la Proof of Stake in generale, la Proof of Quorum consente a Shardeum di generare una ricevuta che indica che la maggioranza del gruppo di consenso ha votato per una particolare transazione. Ciascun nodo del gruppo di consenso firma l'hash della transazione e lo trasmette agli altri nodi del gruppo di consenso. I nodi raccolgono questi voti e, quando il numero di voti supera il 50%, questi voti formano una ricevuta che può dimostrare il consenso sulla transazione. In particolare, l’algoritmo di consenso su Shardeum svolge anche un ruolo chiave nell’assegnazione casuale degli “ID nodo” ai nodi validatori prima che si uniscano alla rete. Con l'aiuto degli ID dei nodi, la rete ruoterà costantemente automaticamente i validatori e i nodi di standby (nodi che aspettano il loro turno per essere ruotati automaticamente nella rete come validatori attivi) per rendere difficile agli attori malintenzionati prendere il sopravvento in qualsiasi momento in tempo.

Le transazioni elaborate vengono quindi raggruppate e inoltrate ai nodi di archivio della rete che sono responsabili della memorizzazione dei dati storici (i nodi di validazione memorizzeranno solo lo stato degli account coinvolti negli shard, consentendo agli utenti ordinari di gestire i nodi su Shardeum). Inoltre, attraverso lo sharding dinamico dello stato, Shardeum implementa un approccio di sharding tridimensionale suddividendo Stato, Rete e Transazione oltre alla scalabilità automatica dinamica per aumentare o diminuire la capacità di rete rispetto al traffico sulla rete.

A ogni nodo della rete verrà assegnato uno spazio account dinamico su più frammenti con un grado sufficiente di sovrapposizione tra gli intervalli di indirizzi. Ciò consente l'elaborazione parallela delle transazioni mantenendo la componibilità atomica e tra partizioni. La scalabilità automatica consentirà a Shardeum di utilizzare le risorse in modo efficiente e di rispondere dinamicamente ai cambiamenti della domanda con conseguente finalità immediata e bassa latenza, mantenendo bassi i costi di transazione per sempre. Inoltre, gli sviluppatori possono distribuire e interagire con i contratti Solidity o Vyper su Shardeum senza particolari considerazioni per lo sharding, poiché i contratti vengono distribuiti automaticamente su shard univoci mantenendo la componibilità atomica su tutti gli shard.

In che modo Shardeum ottiene la componibilità atomica e tra shard?

Anche se possiamo ricercare e trarre vantaggio da ulteriori innovazioni e sviluppi della rete una volta che il Libro bianco verrà rilasciato e i protocolli open source verranno implementati prima della mainnet nel terzo/quarto trimestre del 2023, vediamo come Shardeum può mantenere alti livelli di componibilità atomica e cross-shard basata su ciò di cui abbiamo discusso sopra.

  • Shardeum ordina ed elabora transazioni basate sul tempo su base individuale

  • Il meccanismo di consenso di Shardeum prevede nodi senza leader e ruotati

  • Il consenso viene effettuato a livello di transazione (e non a livello di blocco)

  • Ai validatori sulla rete viene assegnato spazio account dinamico su più frammenti. Sebbene lo sharding dello stato dinamico richieda che ciascun nodo memorizzi un intervallo di indirizzi diverso, ci sarà una significativa sovrapposizione tra gli indirizzi coperti dai nodi con una ridondanza sufficiente di almeno 128 validatori

  • Poiché le transazioni vengono elaborate individualmente, le transazioni che interessano più shard non corrono il rischio di essere confermate su uno shard, ma annullate su un altro.

  • Il consenso a livello di transazione consente inoltre che le transazioni che interessano più frammenti vengano elaborate simultaneamente da questi frammenti, il che non solo riduce il tempo di elaborazione delle transazioni anche se interessano più frammenti, ma garantisce anche un'elaborazione atomica con una latenza molto bassa e una risoluzione immediata

  • Quando viene avviata una transazione in più fasi nel caso di un contratto intelligente complesso, comporta l'esecuzione simultanea di tutti questi passaggi su più frammenti. Con il consenso a livello di transazione di Shardeum, questi passaggi possono essere raggruppati in un'unica transazione atomica per garantire la componibilità atomica

  • Con l'aiuto dello sharding dello stato dinamico, della scalabilità automatica, del meccanismo di consenso ottimale e dell'ordinamento delle transazioni basato sul tempo, Shardeum si ridimensionerà in modo lineare consentendo all'utente medio di eseguire un nodo sulla rete con requisiti di elaborazione trascurabili

  • La scalabilità lineare e la scalabilità automatica manterranno sostenibili i costi operativi della rete, il che significa essenzialmente che i costi di transazione sulla rete rimarranno molto bassi e costanti in modo permanente

  • Le tariffe basse per il gas consentono a utenti e sviluppatori di interagire con più shard e condurre transazioni tra shard in modo conveniente, promuovendo al tempo stesso una maggiore partecipazione degli utenti, che a sua volta facilita la componibilità tra shard senza soluzione di continuità

  • Ogni nodo/frammento che si unisce alla rete aumenterà proporzionalmente il throughput della rete consentendo a Shardeum di scalare infinitamente per evitare colli di bottiglia e arretrati di transazioni. Ciò aumenta direttamente la componibilità della rete

  • Il ridimensionamento lineare, inoltre, facilita la distribuzione uniforme dei carichi di lavoro tra gli shard. Garantendo una distribuzione equilibrata di transazioni e operazioni, ciò impedisce che un singolo shard diventi un collo di bottiglia o subisca un'eccessiva congestione per consentire una perfetta componibilità tra shard

  • Il ridimensionamento lineare consente protocolli di comunicazione tra shard sviluppati per facilitare lo spostamento sicuro e affidabile di dati e informazioni sullo stato tra shard, consentendo un coordinamento senza soluzione di continuità per la componibilità tra shard

  • Poiché Shardeum introduce efficienze operative attraverso il ridimensionamento lineare e automatico, aumenta la capacità della rete di gestire operazioni e interazioni complesse su più frammenti, consentendo un ecosistema blockchain più interconnesso e interoperabile

Conclusione

In conclusione, l’importanza della componibilità cross-shard è enorme nei sistemi blockchain, consentendo la scalabilità e lo sviluppo di contratti intelligenti più complessi. Ciò comporta l'esecuzione di transazioni su più frammenti e il mantenimento dell'atomicità, della coerenza, dell'isolamento e della durabilità (ACID) su tutti i frammenti coinvolti.

Sebbene il raggiungimento della componibilità tra partizioni richieda l'implementazione di vari meccanismi, come protocolli di routing, comunicazione tra partizioni, sistemi di account universali e sistemi di gestione dei metadati, questi meccanismi non fanno altro che integrare l'efficienza e la scalabilità dei protocolli sottostanti. Shardeum è in una posizione unica per integrare dapps/contratti intelligenti complessi facilitando al contempo le interazioni cross-chain e l'interoperabilità come risultato della sua tecnologia innovativa. Attendo con ansia lo sviluppo di questo progetto nelle sue fasi finali di preparazione alla produzione.

#ShardeumIsBorderless #shardeum #TrendingTopic #Write2Eam