Blockchain is in fact a powerful data storage technology. Every block carries a set of specialized information about the network; more popularly a record of expenditures and wallet balances. In cases where the blockchain is not just used for cryptocurrency transactions; a block could consist of patient information, supply chain record, details of an inventory…any digital information you could think of.
The set of data on each block consists the block size. Just like your device memory and disks, each of these blocks occupies a space on the blockchain. The blockchain expands in size with every new block added. This works well but breaks down where the blockchain will need to store a huge amount of data accumulating over a very long period of time.
Continuing this way, the blockchain expands to a point where it becomes ‘heavy’. A heavy blockchain comes with certain efficiency issues. Blockchains like this scale poorly.
In computing and data storage, a truly scalable system is able to maintain a flexible size amidst ever-increasing data and is limitless in the amount of data it can carry. Blockchain start-ups face this problem commonly as the struggle to achieve a truly infinite scalable blockchain continues. While many blockchain projects boast of being scalable, they mostly fall short of their ‘claims’. Only a few can boast of reasonable scalability. These claims of Infinite scalability are mostly a marketing jibe used by many ‘ethereum killers’
If device memories could be expanded without limits and our devices can work well with some high-capacity cryptocurrency nodes running on them, then seeking scalability solutions wouldn’t be a thing. But each transaction on the blockchain generates a lot of data. These generated data need to be stored; accessed and assessed on the blockchain. Memory expansion is also not limitless, ‘heavy’ blockchains are notably sluggish and inefficient. Scalability is desired for high data structures like the blockchain and its node.
Ethereum’s archival nodes sit at over five (5) terabytes (5Tb), the actual blockchain size well over a hundred (110) Gigabytes, and each block adds two (2) Megabytes to this already huge figure. Ethereum blockchain according to many ‘will never scale’ and in 2019, Bloomberg reported the Ethereum blockchain is ‘almost full’.
Scalability and memory friendliness are both very appealing features and are vital for mainstream adoption. Currently, the Ethereum gas price has risen very high and the cost of running transactions on the blockchain could get unbearable at some points.
Different projects have sought fixes for poor scalability through different tweaks, all centered on limiting the rate at which the blockchain expands. A very unique one being Sharding
Regardless of how fast a blockchain grows, splitting the blockchain into smaller interconnected units presents pieces of lighter ‘blockchains’ that reduce the executable size considerably. This is the main idea behind sharding. As part of the upgrade to ethereum 2.0, ethereum developers are planning to adopt this technology to split the ethereum blockchain into lighter pieces. Zilliqa, Polkadot and NEAR blockchain are already using the sharding technology to make their blockchain lighter and their network faster.
The Sharding idea is to make a blockchain more efficient by partitioning it into lighter units. These ‘pieces’ of blockchains are known as ‘Shards’. Each shard stores different types of data and is independent of other shards. Sharding on ethereum will split the blockchain into 64 shards. Consider these shards as interconnected units that consist a blockchain.
Blockchain projects using the sharding technique are adopting different strategies to create competent communication between the shards. Zilliqa uses a sharding version known as Partitioned sharding, where shards don’t communicate with each other directly through a central relay. NEAR protocol and Polkadot uses State sharding, where shards communicate with each other through a state, or central relay. Ethereum blockchain will use the State sharding technology.
Sharding comes at a cost – security. Fact is, most scalability protocols sacrifice security and decentralization for speed and efficiency. Sharding might be just another example. Splitting the blockchain into shards creates units of independent blockchains with relatively less security. These shards could be attacked individually in an attempt to compromise the blockchain. A successful attack on any of the shards affects the rest of the network.
Despite a lot being done already in developing this concept, blockchain sharding is pretty much an emerging technology pioneered by just a few blockchain projects. There’s a continued attempt to develop it to a more competent level. Few shortcomings currently, but in essence, it has shown a lot of promise as a solution for blockchain scalability. Whether it is a ‘perfect’ answer to scalability or not is a question of how successful these projects working to optimize it become.
Follow up with CRYPTOCURRENCY SCRIPTS to stay refreshed in the crypto space with comprehensive articles and important tips.