Sharding is defined as a method of splitting and storing a single dataset in multiple databases. This is performed done for a variety of reasons.
By distributing the data across multiple machines, a cluster of database systems can store a larger dataset while handling additional requests.
Should space constraints exist, sharding acts as a necessary and logical solution for overly sized databases.
Sharding Within the Crypto Space
Within the cryptocurrency world, sharding is used to make transaction confirmations on blockchain networks run more quickly.
For example the Bitcoin network lags behind that of the Ethereum blockchain, or other traditional payment mechanisms.
This is a critical pain point that hurts cryptos as a viable alternative for day-to-day transactions. Sharding is one such way that this challenge can be overcome.
On a normal blockchain network, each computer that upholds the network or node contains a copy of the entire blockchain.
However, when sharding is implemented, each node only contains a portion, i.e. a shard of the network.
These shards are shared with the other nodes on the network and are readable by the general public.
Therefore, a sharded network is still a decentralized network.
Because each node is not required to reload all of the information that’s contained on the blockchain, every time a new block of transaction data is confirmed, the network runs more quickly, and is therefore more scalable.
Sharding is not possible on networks that use the Proof-of-Work (PoW) algorithm, like the Bitcoin network.
Instead, sharding can be implemented onto networks that use the Proof-of-Stake (PoS) algorithm.