Heterogeneous Sharding Empowers Enterprise [An Analysis] | Hacker Noon

June 2nd 2020

Author profile picture

Despite starting out in the financial industry, the blockchain industry always believes that blockchain technology can be applicable and useful to almost any field.

Nowadays, many blockchain companies are working on developing the most effective and useful enterprise blockchain solution. The whole industry did lots of research to understand what kind of blockchain solutions are really needed by enterprises.

And the leading players think the most important function must be flexibility. In fact, it is a relatively missing feature in most existing projects. 

What does flexibility refer to? With many enterprise business scenarios and geographical differences, can we address all the scenarios with just one public chain? In the real application, we can find that these kinds of solutions are not viable.

The ideal solution should be scenario-based: based on the specifications of the scenario, customize a public chain as a solution. In other words, the solution that addresses all scenarios should be multiple blockchains.

Another question arises: if each business scenario requires its own blockchain to be relatively independent, then how can we make the interactions between these blockchains seamless? How can we ensure a high level of security while crossing chains?

Thirdly, if the business needs to expand, how can they maintain a high level of scalability with few major improvements? As we all know, the biggest problem the existing blockchain solution faces is that, once it is written, it is extremely cumbersome to upgrade.

For example, when Ethereum is upgraded from 1.0 to 2.0, it is not something we understand in the traditional sense that the project is modifying the infrastructure from version 1.0 to 2.0. ETH 1.0 and 2.0 are two separate projects which show the whole blockchain ecosystem indeed lacks scalability.

Now there comes another question, what kind of roles do public chains and alliance chains play in the ecosystem? The alliance chains offer more friendly monitoring capabilities and are easier to satisfy business demands.

Public chains are more open and are better for cross-border or some international business scenarios. Based on the understanding and observations of these clients who started to try blockchain technology as the solutions, the trending towards a comprehensive solution that provides both public chains and alliance chains when needed.

To be able to satisfy any demands at any time is something that enterprises are looking for. How can one satisfy the varying types of demands? The simple answer is heterogenous sharding. 

What is heterogeneous sharding? There are three key concepts related to heterogeneous sharding namely single chain, shards, and heterogenous sharding.

What is a single chain? It is analogous to a single-lane highway. ETH 1.0, EOS, NEO, hyperledger, public chains, alliance chains, and so on are all single chains.

As for sharding, it is like a multi-lane highway. The advantage of a multi-lane highway is that the time needed for a huge amount of traffic to pass through is lesser than that of passing through a single-lane highway.  

At the same time, sharding can be based on the current traffic to dynamically adjust the number of lanes. If one has three lanes for now, when traffic increases, one can add one, or two, or three more lanes to expand the capacity to allow more traffic to pass through. One thing to note is that, for each lane, one needs to have identical lanes with identical specifications.

Such constraint requires us to consider in the first place how wide the lane should be.  What kind of materials should be used? Sandstone or granite? Should we plant any greens on both sides?

All these specifications are needed during the design phase. After the design, every time when we add lanes, we follow this blueprint to add identical lanes.

In the area of sharding, ETH 2.0, Zilliqa, Harmony, Near are all good examples. If so, then what is heterogenous sharding? Heterogenous sharding, like sharding, has a multi-lane highway but each lane can be designed differently.

As the highway in the previous examples requires the same width and the same materials and such, the heterogenous sharding highway allows each lane to be designed differently. In the area of heterogeneous sharding, QuarkChain and Polkadot are the leading examples. 

Although the heterogenous sharding allows customized configuration, the question is that in terms of what areas? We can establish a few baseline understandings of blockchain before addressing this question.

Currently, all the structure of blockchain infrastructure includes all the tokens and public chains we heard of, such as Bitcoin, and Ethereum, anonymous tokens, ZCash, Grin, EOS, and all public chains consist of four important components.

The first component is transaction mode, which also can be referred to as a virtual machine (VM). The second component is called the consensus mechanism. The third component is the ledger model and the fourth component is token economics, which is more related to public chains. 

For example, for ETH1.0, it uses EVM as a virtual machine, POW as a consensus mechanism, account base as a ledger, and inflationary expansion as the token economic.

ETH is also used for paying transaction fees. For Bitcoin, its token economics is a fixed 21-million token supply of which it just halved its production rate a few days ago. Its ledger model is UXTO and consensus mechanism is POW with its own unique transaction mode called bitcoin type transaction mode. So as you can imagine any blockchain platform must contain these four elements.

However, for each platform, it has a fixed combination of ABCD. Once defined, users cannot modify or customize based on their needs. If the platform defines A as the consensus mechanism, then all users need to follow suit and adopt A as the consensus mechanism.

It is similar to our analogy where once the width of the highway lane is defined then everyone has to abide by the specification. 

In contrast, heterogenous sharding allows each new blockchain to be configured completely anew. For example, one can add a new VM for each shard on QuarkChain. Like one shard can use EVM while the other one uses Wasm; one shard can use POW as a consensus mechanism while the other uses POS.

The same logic can be applied to the ledger model and token economics. With that logic in mind, each lane can look completely different based on the needs of each lane.

Each shard chain in the blockchain can be added based on demand. The maximum number of shards that can be added is about 20000. There are four shards in this diagram. Shard 1 uses EVM as a virtual machine, POW as consensus.

This shard in fact is similar to ETH and in fact, has incorporated all the ETH functionalities. The second shard is similar to the first shard except that it uses DPos instead of POW as a consensus mechanism, which is used by EOS and Tron. 

The third shard uses XVM as a virtual machine, which is a new type of virtual machine. If one day, the client would like to have a chain using the latest VM technology, they can implement it quickly on a shard instead of hard forking the existing project.

This example demonstrates that out of all the possible VMs or consensus mechanisms, one can choose what it prefers to configure a shard based on business requirements or domains. 

In fact, heterogeneous sharding shares many similarities with cross-chains. What I meant by cross-chain is not interactions between ETH and EOS or between EOS to Tron, but interactions based on the same infrastructure.

For example, Cosmos has a strategy: users can leverage its HUB API to launch a new chain easily but one would need to take its own risk in protecting the chain from attacks. Users are welcome to customize the configuration of each of the four components. 

For Polkadot, it has a relay chain, which is the main chain that allows users to release a new chain easily. Among the released chains, one can cross the chains for communications.

However, a new chain does not enjoy complete freedom in picking the four components: at this stage, each chain can pick its consensus mechanism out of the three limited grandpa options that Polkadot provides.

In the future, it will add more options for consensus mechanisms. For protection, Polkadot’s hub will provide hashing power from its relay chain to protect the chains launched under the hub. 

ETH2.0 shares many resemblances with Polkadot and Cosmos as well. It has one Beacon Chain and many shards. However, its shards have to be identical, lacking diversification. But it is said that Heterogeneous sharding will be the next exploration after ETH2.0 launched.

Lastly, for QuarkChain, it can launch shard chains with one click like that of Cosmos/Polkadot. What is even better is that each shard supports many types of consensus and allows cross-chains.

To summarize all the questions above, a single chain only allows the building of dApp with no customization. All the four components cannot be modified once the chain is launched. Polkadot and Cosmo support launching a chain with one click and can build a public chain and parallel chain and allow cross-chains.

As for QuarkChain, we also support launching one chain with one click. Our solution can customize for public chains as well as alliance chains and allows cross-chains. It can provide a comprehensive solution for public chains and alliance chains, which is something that will satisfy the future demand in enterprises.

There are two actual business cases to show how the heterogeneous sharding technology empowers enterprises in the real commercial world. One case is a solution QuarkChain, the cutting edge blockchain technology company, who customized for a major multi-industry business client.

This client covers various industries and currently based on three different areas, it has built three different independent single-chain blockchains, one on hyperledger, one on FISCO, and one on ETH. How shall the infra be designed to allow future business fit into blockchain? If it would like to exchange data between different industries, how would it be carried out? Since the different businesses all belong to the same company, it would make sense to share the data across verticals.

However, to cross chains between hyperledger, FISCO, and ETH with three different layer one infrastructures are indeed challenging at this moment. 

In the future, should the project launch the 4th, 5th, 6th chains and so on and enable cross-chains among them? Or is it better to create a new chain that integrates all businesses?

Both solutions are not optimal at the point. In the end, the solution was using QuarkChain’s two layer infrastructure that implements heterogeneous sharding.

The root chain acts as the executive level of the parent company that possesses the right to all business data and guarantee security. For each shard chain, the company can customize it based on business needs.

In terms of customization, the four components that make up blockchains can be tuned to fit what the client is looking for. One certain combination can be identical to hyperledger, the other can be the same as the FISCO, and another for ETH.

So one can pick a combination it prefers and add to the shard chain. Since different shards are built on the same infrastructure layer, the solution allows cross-chain interactions. In the future, if the client would like to bring new business on-chain, it can achieve that by adding a shard chain easily. Such a solution allows flexibility and avoids creating an entirely new blockchain from the beginning.

The second case is for a client who is a large-scale business, developed by QuarkChain as well. The client is looking to build a blockchain-based platform for resource management. Currently, it would like to start small with some test points.

Next step, it plans to expand the testing area to more cities and more types of resources. So at the beginning stage, the client wants to start with a few areas and a single type of resource and later on integrate more resources and more cities.

The traditional solution would be to create one chain for the particular resource and connect the related areas altogether. In the next stage, when the client decides to expand to more businesses, then it can launch a new blockchain that adds more users and more types of resources, which is like changing from project version 1.0 to project version 2.0.

Blockchain solutions based on heterogeneous sharding technology are providing a well-planned system to avoid the need to relaunch a new chain for each expansion. It can have multiple layers and add shards on each layer.

To go into more details, for instance, the first layer is the state or equal scale executive level, which is the root chain that controls all the access rights for all data; the second layer is the lower administrative level like the city-level executives, which can use different resources that they have to customize different shards and allow cross-chains among shards.

The first layer has a higher level of access rights compared to that of the second layer. In the future, if the project spans across more resources and even rolls up to the national level, we can add a third or even fourth layer whereby each layer enjoys different administrative rights and controls appropriately. 

Many leading blockchain technology companies are using heterogeneous sharding technology to achieve the most innovative ways enterprises are incorporating blockchain to revolutionize their industry.

We believe that such a cutting edge technology will have a huge impact on the smart city and large-scale resource management system, bringing high storage capacity, high processing efficiency, safe and reliable enterprise blockchain solutions.

Comments

Tags

The Noonification banner

Subscribe to get your daily round-up of top tech stories!

read original article here