One of the major obstacles to the broader adoption of blockchain technology in many sectors is the lack of scalability. Blockchains could be made more competitive compared to the incumbent centralized solutions by Sharding as it can improve their scalability and efficiency. Sharding is one key to blockchain scaling.
Overview
Any kind of data could be stored in a decentralized and secure way in the public, permissionless blockchains which act as distributed ledgers. Because the network lacks a central authority, all the data has to be processed by every node in the system and all the new pieces of information is added to the leger only when the nodes have agreed. Thus two things become very certain, first, the stored data is correct, and second that it cannot be corrupted by one or more malicious nodes.
Blockchain technology gets its attractive quality from its decentralized nature. i.e. the resilience to malicious data modifications, but this also becomes the reason for the biggest hurdle on the way to broader adoption of blockchain technology, lack of scalability.
As more and more nodes are added to the system and there is a lot more amount of data in the ledger, the latency, or slowness, of the network significantly increases. For instance, suppose there is a decentralized payment system where every time a payment is made the information has to be updated on all the nodes of the network. This takes a lot of time. This gives a significant advantage to the centralized networks, where a lot many transactions could be processed in very little time. For example, the Visa payment system makes the claim that it processes more than 65,000 transactions in a second.
One of the solutions to this problem of blockchain scalability is Sharding. Here the database is partitioned into "shards", and each shard is responsible for processing only a part of the data that is stored in the network, thus reducing the processing time significantly.
How it works
As it has been mentioned, the network nodes are divided into groups in Sharding and the information is split and stored in the network between these groups, i.e. the database is "sliced" into smaller pieces (shards). To make sure that the shards are distinguishable from each other, each shard stores data with certain characteristics.
One way how sharding is done is by the partition of the database horizontally, i.e. by diving it into rows. These rows are then leading up to the shards which store specific types of information, for instance, the digital assets or smart contracts that they host.
Another way how sharding could be implemented is by organising network nodes in a manner such that there is a central relay network through which the other "side networks", or shards, can communicate with each other. In this way, any kind of information could be stored and processed by the shards when their functions require it while the information would be available to other shards when needed through a relay.
The shards have to communicate with each other so that user gets access to all the information stored in the blockchain.
Where it is used
In the blockchain industry, one of the most well-known cases of sharding is the sharding of Ethereum. After Bitcoin, Ether, which is the native currency of the Ethereum network, is the second-largest cryptocurrency to date. Its daily transactions exceed 1 million. As shard chains have been deployed to Ethereum, it has become a part of its upgrade to Ethereum 2.
The Ethereum shards are generally organized around a coordination layer, i.e. the Beacon Chain, that was launched in December 2020.
Polkadot is another known case where sharding is used to improve scalability. Polkadot is a blockchain project that aims to create an interconnected ecosystem of blockchains. Polkadot is organized in the relay method where the shards are organized around the main network which is called the Relay Chain.
What are the benefits?
Improved scalability is one of the major benefits of sharding applied to the blockchain. You can now connect more and more nodes to a blockchain without it slowing down the transactions too much. This could catalyse the adoption of blockchain technology in many sectors. The blockchain-based fintech companies could finally compete with centralized payment applications.
Sharding also provides better accessibility to users and higher network participation.
Sharding might also increase some risks like there is an anticipated concern of the takeover of a shard or collisions between shards which can result in the partial or complete loss of information, or injection of data into the network through some malicious shard.
Thus there are both benefits and a few risks attached to it.