Why sharding won’t solve all Ethereum’s scalability woes

  • Polkadot has developed a more flexible form of sharding that might put it ahead of ETH 2.0.
  • Polkadot uses standard web assembly interface, widely used by developers all over the web.

Sharding is one method that can be used to build more scalable blockchains. Amid the news of Ethereum’s long-anticipated ETH 2.0 upgrade, sharding now features frequently in the cryptocurrency news. However, not all sharding is created equally.

Although Ethereum’s sharding proposal will help to solve some of its long-standing scalability issues, it’s not necessarily a panacea that will bring it up to the same level of newer competitor platforms. These include Polkadot, which has developed a more flexible form of sharding that appears to put it ahead of ETH 2.0 before the upgrade is even implemented.

The scalability challenge

A standard linear blockchain such as Ethereum in its current state, or Bitcoin, operates in a way that requires every node on the network to process every single transaction in sequence. The security of blockchain derives from its decentralization. The more nodes on the network, the more decentralized the blockchain, and less likely it is that one or more malicious nodes can attack the network.

But this decentralization also creates the scalability challenge. The more nodes need to process transactions, the slower the network can become. For this reason, Ethereum is currently only able to handle about 15 transactions per second.

What is sharding?

As a concept, sharding isn’t unique to blockchain. It’s been deployed in centralized systems for some time now. Essentially, it’s a partitioning method that can be applied to databases to enable parallel processing, and thus improving speed and efficiency.

So imagine a company has grown to the point that its customer database is so big, it’s slowing down the server on which it runs. The company decides to carve up the database into smaller pieces, say by geography, and store it on multiple servers to reduce the weight.

In a blockchain context, sharding becomes more challenging, because there’s a need to determine which nodes confirm which transactions. Proof-of-stake lends itself better to the concept of blockchain sharding than proof-of-work, because the stake provided by any given node can be linked directly to the value of the transactions they’re allowed to validate. As such, the ETH 2.0 sharding implementation is also dependent on a move to a PoS consensus model.

Ethereum 2.0 homogeneous sharding

We can consider a sharded blockchain as a network of multiple chains, known as shards, processing their own transactions and relying on messaging protocols to ensure overall consensus.

Both ETH 2.0 and Polkadot operate based on a central chain. ETH 2.0 runs on Beacon Chain, which communicates with shards via its own proprietary interface. All shards in Ethereum have to use this single interface to communicate with the Beacon chain.

The need to interact in a standardized way also means there are rules about how a shard chain can change state with each block added to the chain. Effectively, every shard in Ethereum has to follow the same rules for adding blocks to be able to interface with the Beacon Chain.

This type of sharding is called homogeneous sharding. You could imagine it using an analogy of the Beacon Chain as a teacher and the shards as students. The interface connectivity rules are the rules governing assignment submission. The teacher and the students can only communicate when they speak the same language. The teacher also requires that every assignment is submitted in the same format and language each time.

Polkadot’s heterogeneous sharding 

Polkadot’s central chain is called Relay Chain, and the shards are called parachains. Polkadot parachains could be application-specific or be developed for particular characteristics such as security.

Rather than its own proprietary interface, Polkadot uses standard web assembly interface, widely used by developers all over the web. So a Polkadot parachain can operate according to its own rules, providing it can submit its overall state to the Relay chain using the standard interface.

Using the teacher/student analogy again, the teacher can now accept students who speak many different languages, and they can communicate freely. Students are free to write their assignments in their own language and format, as long as they submit them on time.

What does it all mean? 

The additional flexibility of heterogeneous sharding means that Polkadot can interact with chains that want to use their own finalization process, using bridge parachains. So Ethereum could connect to a bridge parachain and run on Polkadot. However, Ethereum’s homogeneous sharding means the compatibility doesn’t work both ways.

Polkadot is already live on the first version of its mainnet, launched in May 2020, and work is now underway on the next phase. The ETH 2.0 roadmap is still yet to launch the first version, and it will be another two years or more before the project achieves full implementation.

A further challenge of Ethereum’s plan to implement sharding is that Ethereum is already an operational blockchain, with thousands of dApps and tokens operating on it. The ETH 2.0 upgrade is being implemented as an entirely new blockchain ecosystem using homogeneous sharding. At some point, the current Ethereum blockchain will get merged into the ETH 2.0 architecture.

This will involve a certain amount of risk for the operators of Ethereum dApps and tokens, which is already starting to become apparent. The advantage of a newer implementation such as Polkadot is that the project has been able to design its roadmap and build activities to accommodate sharding from the very beginning.

Polkadot has also developed an open-source framework called Substrate. This allows anyone to implement a parachain using an out of the box configuration, or customize particular features according to their requirements. Users can choose a programming language that suits their existing programming skills, rather than having to learn Ethereum’s Solidity programming language.

The Ethereum 2.0 upgrade has been a long time in the making, involving a long research phase with several delays to development. The challenge with such a long implementation period is that it allows other, more agile development teams to start scooting ahead. The risk now for Ethereum 2.0 is that it may become outdated before it even gets off the ground.


Last updated on