Is blockchain perfectly scalable?
Scalability is the network ability of the blockchain to balance supply and demand. Accordingly, scaling is the improvement of the system to a level where this coefficient is close to this balance.
Scalability is the ability of a network or database to increase its performance under an increased workload. There is vertical scaling (due to hardware improvements) and horizontal scaling (due to distribution of the workload over small segments). While horizontal scaling refers to adding additional nodes, vertical scaling describes adding more power to your current machines.
What is scaling in simple words
The easiest way to explain scaling is by the example of Saint Peter, who distributes the souls of the dead between heaven and hell.
It is known that the apostle received two keys: a golden key to the kingdom of heaven and a silver one to the gates of hell. But the legend does not reveal the mystery of how St. Peter quickly manages to check a newly departed soul and send it to heaven or hell, if thousands of dead come to his court every second. After all, St Peter always meets a soul face to face and some time is required for them to get to know each other better and glimpse into the Book with all the person's good and bad deeds.
In case if system scaling is involved, we can assume that:
1. St. Peter's skill is upgraded in proportion to population growth and, accordingly, total mortality. He increases his capacity and reduces the time of communication with the soul by some unknown temporal shift in such a way that the time frames remain unchanged for the deceased. It's like vertical scaling.
2. There are a lot of gatekeepers with delegated authority of St. Peter, who have equal rights and opportunities with him. Clones do not need synchronization as they have the same program code (called replication or a complete duplicate).The slightest change in Peter’s personality algorithm automatically changes his duplicate characters. In this case we are dealing with horizontal scaling.
In both cases, St. Peter’s capacity remains high regardless of the increasing workload.
1. St. Peter's skill is upgraded in proportion to population growth and, accordingly, total mortality. He increases his capacity and reduces the time of communication with the soul by some unknown temporal shift in such a way that the time frames remain unchanged for the deceased. It's like vertical scaling.
2. There are a lot of gatekeepers with delegated authority of St. Peter, who have equal rights and opportunities with him. Clones do not need synchronization as they have the same program code (called replication or a complete duplicate).The slightest change in Peter’s personality algorithm automatically changes his duplicate characters. In this case we are dealing with horizontal scaling.
In both cases, St. Peter’s capacity remains high regardless of the increasing workload.
Tough choice: vertical or horizontal?
Why is scalability important in blockchain?
When we talk about the scalability of blockchains, we mean their systemic ability to process the maximum number of transactions in a time frame that does not affect the profitability of operations. As we wrote at the very beginning of the article, scaling is the choice of a model for improving this system.
Taking into consideration the high volatility of digital money, the transaction speed parameter becomes critical.
Developers are still struggling with the following problem: the vertical model of boosting the system goes against decentralization and the horizontal model always affects safety.
BTC blockchain scaling
The bitcoin protocol refers to the absence of a single control node. Therefore, it is impossible to speed up transaction processing by increasing the central server bandwidth.
The BTC PoW blockchain can process 5-8 transactions per second, which is catastrophically low for demand from network users. And all popular fiat currency payment systems process above 20,000 payments per second.
The need for constant synchronization between nodes imposes limits on the amount of information processed at a time: the relay of blocks over the network critically affects the speed of the entire system. This entails an increase in the cost for node owners, as the equipment consumes more and more power and requires constant upgrades.
Therefore, now it is not financially feasible to mine Bitcoin alone for several years. More often, collective pools are created and giant data centers are built for this.
In order not to betray the principles of decentralization and security, the Bitcoin blockchain team offered alternative ways to scale.
Block size and scalability
The first efforts to scale the Bitcoin blockchain by increasing the block size began with appeals from developers like Gavin Andresen and Mike Hearn as early as 2015. They offered to raise the Bitcoin block size from 1MB to 8MB: to increase their capacity and reduce the total number. This idea was implemented through the launch of a soft fork called Bitcoin XT. Theoretically, such a solution could accelerate transaction speed to 25 per second. Only 2% of validators (with the necessary 75%) supported the fork, that’s why the idea never came true.
In 2016, the offer was made to increase the blocks not immediately, but gradually,
every two years. The software fork was named Bitcoin Classic and got support from the crypto community. But it also did not stand the test of time. Its developers suggested miners switch to a more promising option - Bitcoin Cash.
The third soft fork made it possible to choose the block size by voting. It was called Bitcoin Unlimited, but it had so many bugs in the code that it collapsed like a house of cards during the first DDoS attack in 2017.
Unsuccessful scaling through increasing blocks led to the fact that large mining pools controlled the BTC blockchain by less than half. And this is a direct threat to a 51% attack.
ETH blockchain scaling
ETH blockchain is created as an environment for the development and operation of smart contracts and works faster than BTC blockchain: the payment processing speed at the start reached 1,000 transactions per second.
Its creator, Vitalik Buterin, expected that the ETH blockchain would use the Proof-of-Work(PoW) consensus algorithm. But the low scalability of the database and the high transaction fees forced him to give up on PoW and to develop ETH 2.0 with the use of sharding.
This horizontal scaling model increased system capacity by 100 times. It was achieved by dividing the information flow into several parts (shards), which can be distributed among independent servers.
The Ethereum blockchain consensus algorithm has been modified towards the Proof-of-Stake model and changed miners' incentives for validation.
The classic ETH mining lost its relevance after the launch of Beacon Chain (a new version of the blockchain). Validators have to concentrate their resources in collateral assets, which are a type of staking.
This decision had a negative impact on the security of the ETH blockchain.
But for a network, where popular apps with huge demand are developed, such an architecture is the lesser of two evils.