Post
Topic
Board Development & Technical Discussion
Re: Maintaining the growing blockchain ledger size in local full nodes
by
jnano
on 18/11/2017, 05:43:37 UTC
Currently, full nodes verify and validate each and every block to ensure that they are valid and adhere to the protocol rules. If you were to store all the blocks separately, not every node will be verifying each of the blocks.
It could work like pruned mode: download everything but store only some. Or it could be selective downloading. In both cases, like it does already, the blockchain headers can be downloaded and kept in full to provides some verification.

Quote
In addition, how would you know which nodes would store which "10%" of the blockchain?
I'm not sure of the protocol details, but that's relatively easy to solve. Currently it already finds the full nodes among the pruned and SPV. Also current full nodes aren't always up-to-date to the latest block, during startup resync. As for deciding what to store, maybe a probabilistic approach could work, or something fancier that involves probing the network.

But I bet all of that was already considered in the past, at least tentatively. Maybe there are even some BIPs on topic? Smiley

Quote
If the current growth remains the same, I'm estimating an additional ~52.6GB per year.
That's unlikely the be viable for long. Blocks are already mostly full today, and the network is congested. If SegWit takes hold it might reach 100GB/year or more (not sure if everyone needs to store the witness part?) within months, and even that's not going to be enough for much longer if the network is to grow further.