What is sharding?
Sharding is a database partitioning method used by blockchain firms to improve scalability and spread workload, allowing them to process more transactions per second.
Sharding explained
Sharding means breaking up a blockchain company’s entire network into smaller pieces, known as ‘shards’. Each shard is made up of its own data, making it distinctive and independent from other shards.
As an example, let’s take a look at why the world’s second-largest blockchain, Ethereum, wants to use sharding to split its data infrastructure.
Ethereum was designed to make it easier to build decentralised applications, or dApps, that would give users more control over their finances and online data.
These decentralised alternatives to ordinary apps will assumingly spread and offer an alternative to apps – such as Twitter or Facebook – that have a centralised point of control. Ethereum plans to serve as an international decentralised, un-ownable, digital computer for executing peer-to-peer contracts — in essence, a ‘world computer’, open to all, that can’t be shut down.
However, executing its plan and offering competitive alternatives to existing apps will require Ethereum to be able to store massive amounts of data.
For traditional apps, cloud computing companies like Amazon Web Services (AWS) and Microsoft Azure provide distributed computing processing capacity and store large quantities of data from thousands of applications.
As of today, Ethereum is not able to store data as efficiently as a centralised cloud computing firm like AWS. Sharding is a part of Ethereum 2.0 upgrade, which is planned to be rolled out in 2023. It will help the platform to “provide extra, cheaper, storage layers for applications and rollups to store data”.
How does sharding work?
As of now, each node in a blockchain network must process all of the transaction volumes within that network.
A node is a computer – or group of computers – working together to support a crypto network through the verification of transactions and maintenance of the blockchain, or the digital ledger.
Nodes in a blockchain are independent and responsible for maintaining and storing all the data within a decentralised network. Each node has to store critical information, such as account balances and transaction history. Blockchain networks were originally established so that every node processes all of the operations, data, and transactions on the network.
While it ensures a blockchain’s security by storing every transaction in all of the nodes, this format considerably slows transaction processing. Slow processing speeds will likely make a future in which blockchain becomes responsible for millions of transactions.
Sharding can help to solve the issue, as it partitions, or spreads out, the workload from a blockchain network into separate smaller pieces, so that each separate node doesn't need to handle or process all of the blockchain's workload.
This can potentially create a security issue, as one shard can corrupt another, resulting in a loss of data. As each shard is, in a way, its own blockchain network, it could also be vulnerable to cyber attacks and malicious software.
However, according to Ethereum: “Sharding will eventually let you run Ethereum on a personal laptop or phone. So more people should be able to participate, or run clients [an application to run a node], in a sharded Ethereum. This will increase security because the more decentralised the network, the smaller the attack surface area.”
Related Terms
Decentralised application (dapp)
dApp, short for decentralised application, is a computer application running on a...
Blockchain technology
A blockchain in simple terms is an immutable (unchangeable) digital ledger which is managed...
Node
In the cryptocurrency world a node is a computer, or group of computers working together,...
Latest video