Sharding — cos'è e perché la blockchain dovrebbe essere suddivisa?
Le blockchain soffrono di un trio di vincoli: scalabilità, sicurezza e decentralizzazione. Migliorare uno significa sacrificare l'altro. Per rompere questo triangolo, è stata proposta l'idea dello sharding — la suddivisione della blockchain in parti.
Cos'è lo sharding?
Lo sharding è la suddivisione dell'intera rete blockchain in frammenti indipendenti, o shard.
Ogni shard gestisce la propria parte di transazioni e dati, riducendo il carico su tutta la rete.
Esempio dalla vita reale: invece di una enorme cassa nel supermercato - 100 piccole casse, ognuna gestisce la propria fila.
Come funziona nel blockchain:
Ogni shard è un mini-blockchain con il proprio database.
I nodi non devono memorizzare l'intero blockchain - solo il proprio shard.
La beacon chain (catena principale) coordina l'interazione tra gli shard.
A cosa serve lo sharding?
Scalabilità: la rete può gestire migliaia di transazioni contemporaneamente.
Riduzione dei requisiti per i nodi: non è necessario memorizzare e verificare l'intera storia della rete.
Disponibilità: più partecipanti possono essere validatori.
Qual è la difficoltà?
Sicurezza tra gli shard: è necessario che non si disturbino a vicenda.
Difficoltà di sincronizzazione: è necessario controllare come i dati si intersecano tra gli shard.
Minacce alla centralizzazione: se uno shard viene attaccato, questo può influenzare l'intera rete.
Ethereum e sharding
Sharding è parte della scalabilità di Ethereum 2.0.
Attualmente, l'attenzione principale è su Danksharding e Data Availability, ma lo sharding classico è anche una fase importante.
Output:
Lo sharding è un modo per parallelizzare il blockchain, come il multithreading in un processore. Questo offre alla rete la possibilità di scalare senza sacrificare la decentralizzazione e la sicurezza - se implementato correttamente.
