The world is eagerly waiting for a next-generation high-performance public permissionless blockchain. This blockchain should be able to industrially scale all decentralized applications. The world/crypto community has so far witnessed:
- P2P blockchain networks that use all the nodes to validate transactions, do computation and storage. For example, Bitcoin, Ethereum … (Traditional Blockchains)
- P2P blockchain networks that shard transactions, computation and storage. For example, Zilliqa, Ethereum 2.0, Harmony … (Sharded Blockchains)
The sharding technology allows for an unlimited and sustainable scalability of blockchains. The scalability problem is the only one preventing mainstream blockchains to reach masses. The sharding technology is the only solution to the blockchain scalability problem.
In this article, we will discuss the problems that plague sharding technology. And also, how self-healing sharded blockchains are the only solution to this!
Why do we need sharding technology?
- over billions of transactions generated every second around the world (payments, IoT, supply chain, etc.),
- over a sextillion calculations per second
- over 2.5 quintillion bytes per second of data generated and stored
This work needs to be split among nodes. This splitting of work is called Sharding Technology. Sharding can be applied to transaction, computation and storage.
Problems that plague Sharding Technology are
- P2P network problems like internet connection problems, electricity cuts, data loss, many more …
- The nodes go online and offline all the time throughout the globe.
- Less data availability and data consistency of sharded blockchains in comparison to the traditional ones.
- When all the nodes in a shard go offline, the data belonging to that shard is lost forever.
The culprit here is the unpredictability of the P2P network! This unpredictability of P2P network decreases the performance of validation, computation and storage.
Note: Most of the sharding technologies offered today are on permissioned blockchain networks, which already have an assurance of high P2P performance. But the world needs a permissionless blockchain network to ensure true decentralization. Hence the self-healing sharding technology is needed.
Introducing Self-Healing Sharding
Due to the unpredictability of the P2P network, to ensure the consistent performance of a shard, the self-healing mechanism is introduced.
From the fig, whenever a shard in normal sharding goes offline, then all the data belonging to that shard is lost forever. But in self-healing sharding, if a shard goes offline the data is still available and the network continues to run. Once the nodes of the shard are back online then they will update the view and store the data that they are supposed to store.
- The transaction/computation/storage is divided into tiny parts and each part has its own shard and no two transactions/computation/storage(data) have the same shard.
- In other words, instead of assigning the data to a particular shard, assign a shard to particular data so that no two data have the same shard.
- Ensure geographical distribution of the shard so that local disruptions can be overcome.
- Distribute the sharding information itself onto another sharded decentralized chain.
- To preserve an unlimited network capacity, a very small amount of information is replicated on all nodes.
- To ensure automatic repair, nodes use the same information, formulas and algorithms.
- This mechanism allows any node in a few milliseconds to self-repair.
To have an in-depth understanding of the self-healing mechanism please refer to the Uniris yellow paper.
Uniris is a pioneer in the Self-healing mechanism and is the first blockchain to implement it.
If you would like to know more about Self-healing mechanism or about Uniris contact firstname.lastname@example.org