Horizontally Scaling DPoS

in eosio •  6 years ago 

horizontal_nails.jpeg

The Problem

The current cost of RAM on EOS is just over $200k/GiB. Comparatively, you can buy 1GiB of RAM for about $10 online. Another variable often discussed when talking about scaling is transactions per second (TPS). Trying to scale vertically on one blockchain is currently inefficient, but there are costs to horizontally scaling that should be considered. Let’s look at a couple different ways to horizontally scale, Sidechains + IBC and the DAPP Network, and consider the pros and cons of each approach.

Sidechains + IBC

EOSIO has had many forks other than EOS, e.g.,Worbli, Telos, ONO. These forks could eventually become sidechains of EOS instead of being their own, independent networks, and this paradigm would be enhanced by Inter-Blockchain Communication (IBC). EOS can be pictured as the ‘glue’ that holds the entire network together, it is the consensus layer that secures the immutability of transaction history for the entire network.

Pros:

BPs can be chosen specifically for the purpose of any sidechain. For example, if you are dealing with a KYC/AML compliant network, it makes sense that you would want full transparency on ownership of BP’s validating your transactions.
New governance experiments, e.g., Telos Blockchain Network.
Testing new distribution models, e.g., BOS.
Potentially cheaper TPS scaling solution than vertical scaling of EOS.

Cons:

IBC may need BP’s on sidechain to at least be a subset of EOS BP’s, but the extent of this needs to be tested.
Only so much non-native currency can be on any given sidechain before those funds become vulnerable. For example, it would be unsafe to store a large amount of EOS on WAX right now.
Limit to how much data can be stored in any one blockchain’s RAM.
We don’t have a fully fleshed out IBC protocol, yet.

The DAPP Network

The DAPP Network was recently released by the LiquidApps team led by Beni Hakak and Tal Muskal. The first application of this DAPP Network is called vRAM. vRAM is a mechanism that allows dApp Service Providers (DSPs) to provide affordable, scalable, completely decentralized, and cryptographically secure storage services to dApps and their users that is accessible to EOS without always having to perpetually live in EOS RAM.

Pros:

Scaling the network and allowing previously unimaginable dApps to be established on EOS today.
Transactions facilitated by the DAPP Network will still ultimately be up to the EOS BP’s to confirm and produce blocks for (or whatever blockchain and associated mechanism the dApp/user have agreed to use).
Reduces amount of data that has to be perpetually stored in EOS RAM (making RAM a cache layer only).
Even if data held by a DSP is compromised, the historical hash data held on EOS could be read to reproduce the comprised the data held in vRAM.

Cons:

Introduces a new token, DAPP, which isn’t yet fungible with EOS, so just an extra bit of accounting the user has to keep in mind.
Like IBC, the idea DAPP Network is presenting is still a proof of concept.

Conclusion

Depending on what kind of scaling you are interested in, whether it be TPS or amount of data stored in memory, there are creative solutions being built to test capacity limits of DPoS networks. The amount of building occurring in EOSIO right now is fascinating to watch and to be a part of. How vRAM will fit into the equation, potentially as a way to more efficiently scale sidechains + IBC, is something to keep a close eye on.

While I continue to follow, work with, advise, etc. EOSIO forks, I am currently doing a deep dive into how I can offer a meaningful service as a DSP. This is at the top of my current ‘what am I passionate about’ list. My intuition into the power of what services a DSP can provide goes way beyond cheap storage. I foresee an exponential number of business models that could live as a DSP in the DAPP network to facilitate dApps in any and all blockchain protocols. I wonder if different governance models could be offered as opt-in services by DSPs?

If you are interested in collaborating or just dreaming up ideas, please do not hesitate to reach out. You can find me at @jbucksteiner on Telegram.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Congratulations @justinbuck! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

You made more than 10 upvotes. Your next target is to reach 50 upvotes.

You can view your badges on your Steem Board and compare to others on the Steem Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Do not miss the last post from @steemitboard:

SteemitBoard - Witness Update
SteemitBoard to support the german speaking community meetups
Vote for @Steemitboard as a witness to get one more award and increased upvotes!

Congratulations @justinbuck! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!