Adaptive State Sharding
To begin with, it is important to explain what sharding actually is. Sharding is a process that splits the whole blockchain into several smaller chains, which each are individually referred to as "shards." It is a scaling technique that can be used by blockchains to divide up states and process transactions so that each node of the chain (the computer connected to the chain) only has to process a fraction of all transactions. Each shard contains its own data and is unique among other shards. In the case of a blockchain, sharding can allow for severe reductions in latency, which helps to avoid overloading the chain.
Adaptive State Sharding is the optimal approach to blockchain sharding. It serves as a scalability solution by improving communication within shards and increasing the overall chain performance and efficiency. Adaptive state sharding achieves these results by combining three basic types of sharding, which enable parallel processing at all levels.
Basic types of sharding
- Network sharding addresses the way nodes are grouped into shards and can be used to optimize communication, since distribution of messages within the shard itself can happen much faster than distribution to the entire chain
- Transaction sharding provides a mapping of transactions to sections for processing based on criteria such as the sender's address. Each section processes transactions in parallel with other sections. In this situation, each node keeps a record of the state of the whole chain
- State sharding divides the state or history of the whole chain into different chain shards. Each shard has its own history (ledger) and nodes only need to store the state of the shard they are in
- Reduces latency and prevents network congestion
- Solves the complexity of combining network sharding
- Improves overall efficiency, speed and prevents network outages
- This model allows for adaptation to an increasing or decreasing number of nodes without compromising the chain decentralization and security
- Can be more complex to manage and can lead to problems if not handled properly
Adaptive State Sharding is a combination of the three basic types of sharding, which aims at the process of automatic data redistribution based on certain criteria. It targets improvement to the chain’s efficiency and performance, as well as helping secure the chain against potential attacks.