What is linear scalability and why is it important for Web3?
What is the scalability of blockchain networks?
The scalability of blockchain technology can be viewed as the holy grail of the entire crypto industry. Mostly associated with transaction speed, there are many solutions being developed within the crypto space to achieve blockchain scalability and get past certain obstacles along the way.
When debating about blockchain scalability, the scalability trilemma is often mentioned. The scalability of blockchain networks is one of the main obstacles for the crypto community. The trilemma claims that blockchains can only achieve two of three elements which are decentralisation, scalability, and security.
Vitalik Buterin, the co-founder of Ethereum, came up with the trilemma term to reference this challenge of blockchain technology. While it is thought that blockchains can never have all three elements at the same time, it has not been demonstrated that it cannot be solved either.
Why is scalability important?
Scalability is more than a technical requirement; it presents an important aspect of mainstream blockchain adoption in various industries. Let's explain this briefly.
A wider adoption of blockchain technologies implies an increased user demand. As more users use blockchains, transaction volumes rise accordingly.
Secondly, extending real-world use cases and applications also implies a broader user demand. Certain industries, such as finance and the supply chain industry, require a higher transaction throughput. Transaction throughput refers to the quantity of transactions the computer process can take.
To be more efficient than traditional banking services, crypto transactions need to be cost-efficient. A scalable blockchain network could be able to process more transactions at the same time with lower transaction fees.
In other words, blockchain networks often encounter consequences when their transaction throughput capacity is throttled, especially during periods of high traffic. These are, for example, network congestion, higher transaction fees, and repeated outages.
Thereby, scalability presents a significant problem for blockchain networks because of their capacity to handle increased workloads proportionally while retaining the highest level of performance. There are several approaches to this problem, with their unique advantages and disadvantages.
Are scalability and performance the same thing?
Scalability can sometimes mean divergent things to different people. Often users confuse scalability with performance and use these two terms interchangeably.
While experts point out that scalability is indeed a multi-dimensional subject, scalability and performance are not the same thing. Performance refers to the speed with which a single request can be executed; on the other hand, scalability measures the ability of a request to maintain performance under increasing workload.
What is linear scalability?
Linear scalability refers to a system or application that can handle more work by adding more machines or nodes proportional to the increase in work. A linearly scalable system can handle twice as much work when the resources are doubled and even thrice as much when the resources are tripled.
Regarding blockchain networks, linear scalability is important for systems that can handle growing workloads. Linear scalability solutions enable blockchain networks to add resources to meet the increasing demand while maintaining the network’s performance efficiently and steadily.
A part of the crypto community says that linear scalability is not just a buzzword, but a real game changer in the evolving digital landscape. A linearly scalable network should be able to increase its transaction throughput capacity by simply adding more nodes proportionally.
How does linear scalability differ from vertical scalability solutions?
Vertical scaling means a network can scale by adding more power to existing machines. However, the resources added are not always connected to the increases in performance in the same proportion.
For instance, a system that isn’t linearly scalable might only be able to see minor performance improvements after a certain point has been reached or demonstrate diminishing returns with time and increased workload.
In traditional Web2 networks and many blockchain networks, performance has often been maintained through vertical scaling solutions.
If you wonder how Web3 could successfully replace Web2, we suggest reading this article: 'What is Web3? Understanding how the decentralised web could replace Web2'.
Getting true linear scalability in blockchain networks can be a difficult task that requires knowledge of performance optimization, distributed systems, and software engineering.
How does linear scalability work?
Linear scalability enables a certain system to take on a bigger workload according to the number of added resources. If a system has been built as a linearly scalable one, the system’s performance should be optimal and constant. With more resources being added, it can take on an increased user demand without performance processes slowing down.
To attain linear scalability within blockchain systems, it needs to be set up so that resources can be added quickly, without causing any problems. For example, this can be done by using distributed systems or methods such as sharding and load balancing.
In simple terms, linear scalability means that a system can increase its throughout with the addition of more resources. The relationship between throughput and resources is linear. So, if you add 20% more resources to the system, the throughput should increase by the same percentage.
It can be said that the Internet itself is linearly scalable since the total amount of network bandwidth scales linearly with the amount of network capacity to fulfill the user demand element.
When it comes to distributed ledger technology, those resources refer to nodes. A blockchain system is linearly scalable if the throughput increases with the addition of more nodes to the network.
What are some examples of linear scalability?
Let's lay down a few examples of linear scalability to explain this concept better.
Distributed computing
Distributed computing means that tasks are being assigned to multiple machines that work together to achieve a common objective. By adding resources when it is needed, scalability is attained.
By distributing a certain task to multiple machines, each of them cooperates to achieve the goal. By adding resources on demand, linear scalability is obtained.
Cloud computing
Cloud computing is based on utilising a third-party service provider’s shared pool of resources such as processing power, memory, and data storage.
Businesses and organisations implement cloud computing technology to adjust to varying workloads, just by adding or removing resources based on demand.
To learn more about Web3 cloud computing, why not read this article: 'Is Web3 cloud computing the future?'.
Virtualised environment
The virtualised environment can expand to bigger workloads just by adding more resources on demand. In other words, the process of virtualisation creates digital copies in an operating system or the entire network.
Are there any challenges?
There are certain challenges linked to linear scalability solutions. Even though systems are designed to be linearly scalable, hardware limitations must be considered. As resources increase, there can come a point where it meets various constraints.
Adding more hardware doesn’t mean that the problem is necessarily fixed, and that performance is enhanced. The system or application must be optimised to utilise the hardware addition efficiently.
The final challenge refers to network latency which can impede blockchain scalability. Network congestion can emerge with more nodes working together.
Achieving true linear scalability
Being aware of challenges surrounding linear scalability helps a lot in achieving true linear scalability. You must be able to design and implement your plan carefully as well as spread the workload evenly across the system using available methods and blockchain scaling solutions.
Achieving true linear scalability is not an easy task within blockchain networks as it requires in-depth knowledge of software engineering, performance optimization, and how distributed systems work.
Are linear scalability solutions the holy grail of Web3 adoption?
Blockchain technology emerged after the notorious 2008 financial crisis to minimise the influence of intermediaries on users’ funds and privacy. Blockchains ensure due to its consensus mechanism that operations are carried out in a trustless manner with nodes maintaining the integrity of a blockchain network.
However, most blockchain networks relied on vertical scalability like Web2 companies. While traditional financial institutions process transactions through resources such as augmented hardware devices and authenticated personnel, it was a big challenge for blockchain platforms to present all of its three desired elements- decentralisation, scalablity and security at the same time and without any trade-offs.
Relying on vertical scalability didn’t turn out to be a good option for blockchain-based systems due to network congestion and elevated transaction costs.
With the rise of Web3 technologies, it became evident that the scalability trilemma can be potentially solved by scaling networks linearly to maintain a high level of decentralisation, security and scalability simultaneously. It has been even mentioned that linear scalability solutions present the growth of blockchain systems through the community involvement in the form of nodes.
In other words, linear scalability solutions in Web3 refers to the ability of a blockchain or distributed ledger system to handle an increase in user demand and transaction throughput while maintaining efficiency as well as faster and cheaper transactions.
Linear scalability is important for all modern technology systems, enabling them to handle increased workloads proportionally and consistently.
To learn more about blockchain networks and Web3 technologies, check out our Learn Crypto Academy.