EOS scalablity
Is there anybody with good technical insight to EOS to answer this question about EOS scaling? I already posted it before as comment in different thread but get no relevant answer.
Main problem with scaling without sharding, off-chain processing or similar technology is that each full node have to download, store, process and distribute results of all transactions. Storage and network bandwidth are real bottlenecks here. Processing CPU power limit is mostly irrelevant here because bottleneck is elsewhere.
Let's take example of EOS storage and network requirements. For 10 000 tx/s with 1kB average transaction it requires 10 MB/s storage space and for sync with other nodes let's say 10 times more (100 MB/s) network throughtput to exchange data with other nodes. Each full node zhus needs to store 864 GB of data and transfer over 8 TB of data over network each day.
People usually reffers to bitshares as example of how scalable blockchains EOS team created before with same technology. Bitshares stress test shows that it is capable of processing 3000 tx/s which is impressive number in same order of magnitude as advertised EOS tx/s.
But I found this report from bitshares stress test: https://www.google.cz/url?sa=t&source=web&rct=j&url=https://docs.bitshares.org/_downloads/bitshares-stresstest.pdf&ved=0ahUKEwj90qLwv5vWAhVJEVAKHZ3SChIQFggfMAE&usg=AFQjCNEshm26kKTEXYHEDJJO8lpGs__ADg
Based on data in this report they get max tx/s with 1kb transactions and 5 MB block every 3 seconds. That mean 1.6 MB/s of data stored and about 16 MB/s traffic. This is possible for short term stress test (this test was about 1.5 hours long). Test nodes stored 8 GB of data and transfer 80 GB over netowrk. But same level of storage and network traffic would be problematic for long running nodes. It would mean 144 GB of data stored and 1.4 TB network traffic per day for each node.
This numbers are quite huge and would eventually lead to centralization of network on few industrial scale datacenters.
Other blockchains prevents this centralization issue by setting artifical limit on blocksize which limits number of tx per second processed but also prevents network from centralization by allowing more miners to keep up with network. This is important because decentralization is only real benefit blockchsain have over old school cloud systems like AWS. If you want high tx/s and don't care over centralization you could deploy solution to few different cloud platforms and get even better results with same or better level of security just withnout decentralization.
From my pow it looks like EOS only removed these anti-centralization safety limits and run short term tests on 100 MB/s network. Same thing can be done on ethereum or any other blockchain by simply modifying just one parameter - max block size.
Am I wrong? Am I missing something? Can someone point me to any resource if and how EOS solved centralization issue described above while still running 10 000 tx/s? Did they somehow already implemented sharding or similar solution in their solution? Can you point me to some resources to study their solution of this problem?