Partisia Blockchain’s Complete Sharding
Scalability has been something that architects have been grappling with for many years. In the technology space, being able to scale both vertically (adding capacity) and horizontally (adding instances) has been grappled with in all parts of the technology stack. Do you add more transistors in a CPU or add cores to work together? Do you add more space in a hard drive or add multiple hard drives to work together? Do you build a faster computer, or create a software architecture to use multiple computers in sync?
One thing is for certain however. Scaling vertically has limits. There is only so much CPU, memory, storage you can add to a single system before it runs out of capacity.
Blockchain space is no exception. As adoption grows, so must the ability for a blockchain to handle the additional transaction on chain as a result. And in the blockchain space, we call it TPS (transactions per second) This is a combination of two metrics;
- Time it takes for a block to be finalized and appended to the chain
- Number of transactions in a block
Different blockchains use different architectures to try and achieve faster throughput. For finalization, there are things like probabilistic and deterministic finalization. To achieve a higher number of transactions, blockchains have turned to sharding, and added on different rollup technologies like ZK or optimistic roll ups.
What makes Partisia Blockchain different?
To create the fastest blockchain, you have to first look at what can theoretically be achieved for the above two factors. For the finalization time, the fastest is instant. As soon as the block is created, you want it to be finalized as fast as possible. For the number of transactions in a block, you want to be able to put the number of transactions in a blockchain can handle to be as much as possible. The more transactions you can process at the same time, the faster your chain will be. And all of this needs to be done in a secure manner. So how does Partisia Blockchain handle these two challenges?
PBC’s “Speed of light” finalization
For finalization, PBC has implemented a unique consensus model that consists of three parts.
- Proof-of-Verification (PoV): Ensure that the signed blocks came from validators who actually executed all transactions included in the new blocks. In other words, a PoV is a guarantee that a validator personally verified the content of a block.
- FastTrack consensus: A rapid consensus process with pure finalization.
- An incentive scheme that incentivizes propagation and connectivity in the P2P network.
This unique finalization model allows for blocks to be created and finalized in real time with the only limit being the time it takes for the verification signatures to propagate throughout the network. (More info in PBC’s yellow paper section 3.1)
PBC’s “complete sharding”
While the term “sharding” has been popularized by blockchain, its actually a term that was coined back in the 1990s, by an online video game company, of all places. During the initial popularization of MMORPG (massively multiplayer online role-playing games) the company building the game Ultima Online ran into a scalability problem. To solve the problem of scaling out huge worlds for hundreds of thousands of users to interact with, they came up with a database scaling architecture and coined it “Sharding” This sharding architecture caught on and is now actively being used by many different database products, including MySQL, Oracle DB and MSSQL.
Blockchain has borrowed the term but if you look at the general architecture of most blockchains, it does not conform to the general principles of what sharding really means. In blockchain sharding, while blocks may get created in parallel, it still gets appended to the end of a single chain.
Through “speed of light” finalization we tackled the issue of creating finalization instantly. For the transaction per block issue, we looked to architect the sharding model according to the definition of what sharding really is; True parallel processing of data.
Just like how it is in traditional databases, in Partisia Blockchain, each shard is an independent blockchain. And each shard ,or blockchain, is capable of independently creating, validating and confirming a block. This architecture goes back to the original definition of what a shard is and allows for true parallel processing of blocks. And in the event congestion is detected, the system automatically creates a new shard adding additional capacity dynamically. Through this dynamic scalability architecture, Partisia Blockchain can theoretically scale infinitely, only limited by the number of nodes in the blockchain.
By creating a programming language that allows for developers to use MPC in a generic way, Partisia Blockchain Foundation has made the creation of applications that can harness the power of MPC for different use cases a possibility. Partisia has been at the forefront of providing private MPC solutions since 2008. And by layering this technology on top of an interoperable and scalable blockchain, Partisia Blockchain is paving the way for anyone to create blockchain solutions that can balance privacy and transparency to build trust and ensure integrity.
To learn more about different use cases or partner with us for solutions, please visit partisiablockchain.com, check out our Medium articles, development documentations or email us at build@partisiablockchain.com.
Stay updated:
Website • Twitter • Discord • Telegram • LinkedIn • Facebook • Instagram • GitLab • Medium • YouTube