What Blockchain Needs Right Now: Part One – Scalability

0
316
Scalability

The Road to Mass Adoption

Blockchain technology has changed a lot since Bitcoin got the ball rolling in 2008. However, we have been promised mass adoption for a while now and this “revolution” is happening rather slowly.

There are many reasons for this, but some are more obvious than others. In this article series, we will look at three important innovations the blockchain ecosystem needs in order to succeed.

Let’s start with Scalability.

Blockchains Don’t Scale

Let’s face it: it’s a good thing that Bitcoin is not used more as a means of payment. Because if it did, the whole protocol would collapse. There is no way the Bitcoin network in its current form could handle the transaction throughput required to replace something like the VISA credit card payment network. Bitcoin can process approximately 7 transactions per second. There are different numbers available on VISA’s throughput, but even choosing one of the lower figures reported, 1,700 transaction per second, still shows a significant difference.

Other blockchains don’t fare much better in this comparison. Ethereum can handle around 15 transactions per second. Clearly, something must change if we want to replace long-established financial systems.

  • Facebook
  • Twitter
  • Buffer
  • reddit
  • LinkedIn
Image credit: CC0 Public Domain

The Reason Things Don’t Scale

Blockchains work by all nodes maintaining a full copy of the distributed ledger. This means, that each and every node has to store a full copy of the system’s state, including all accounts and their balances. They also have to process all transactions. This places two types of load onto individual nodes.

Firstly, storage is a problem as the blockchain keeps growing rapidly. With storage being cheap, the bottleneck is not necessarily the size of the data but the number and frequency of write accesses. Ethereum nodes currently require expensive solid-state hard drives to be able to keep up with incoming data. Spinning disks are just not fast enough anymore. Secondly, transactions have to executed one by one to be validated. This places a limit on the number of transactions the system can process.

Proposed Solutions

Removing these bottlenecks is not easy and involves trade-offs. Ethereum co-founder, Vitalik Buterin talks about the so-called Scalability Trilemma. The trilemma refers to a trade-off between scalability, security, and decentralization. Basically, in order to improve scalability, either security or decentralization requirements need to be relaxed.

A number of solutions to increase scalability have been proposed. These can be classified into on-chain and off-chain solutions. On-chain solutions usually involve changes to the consensus protocol or tweaks to certain blockchain parameters. The block size increase in Bitcoin Cash is a good example of an on-chain scalability proposal.

Off-chain solutions, on the contrary, propose secondary layers that execute the bulk of the transactions and only use the blockchain for occasional settlement. An example of such a solution is Bitcoin’s Lightning Network.

Maybe the most promising solutions can be classed somewhere in between on-chain and off-chain proposals. These solutions consist in slitting up the blockchain in various ways, in order to spread the load between nodes and use a more hierarchical structure. Side-chains split up the chain along application specific divides. Side-chain nodes only process the transactions on their chain, relevant to them. The main chain is used for settlement. In contrast, sharding is a technique borrowed from database technology, in which the chain is divided horizontally.

Not the Only Issue

Scaling may be the most pressing concern, but it is not the only innovation required. In the upcoming parts of this series, we will look at how the blockchain can communicate with external data feeds safely and the economic tools that are required to unleash the full power of decentralization.

LEAVE A REPLY

Please enter your comment!
Please enter your name here