6

As more and more Bitcoin transactions are produced, the growth of the Blockchain may well, one day, become a problem for systems which want (need?) to store the whole blockchain.

  • Storage usage
  • Client startup time
  • First-time synchronisation

This answer to "Are there any studies into the size of the blockchain scaling over time?" suggests that Simplified Payment Verification is a good solution, but SPV, as far as I understand it, requires a degree of trust in individual peers that may not be to everyone's taste.

Although I don't really understand the blockchain well enough even to know if this is sensible, the sort of thing that occurs to me might be a mixture of SPV with partial blockchain caching (least frequently used?), where the client keeps a small piece of the blockchain.

Is this really a problem, and is there any work in progress to solve it?

Alternatively, if this isn't a problem, please help me to understand why.

4
  • Hi Brent, Actually, just this issue is currently a hotly debated topic. A little while back, Bitcoin Core added support for blockchain pruning, which enables node operators to limit the memory available for blockchain storage. However, then the node will not "store the whole blockchain". Longterm solutions are still in development.
    – Murch
    Commented Jul 24, 2015 at 12:16
  • @Murch : Thank you - if you'd care to make this an answer, I'd certainly upvote it, and, after a few days, even accept it! Commented Jul 24, 2015 at 12:53
  • Sorry, currently at work. I'll have a look later, to write something more encompassing though.
    – Murch
    Commented Jul 24, 2015 at 13:18
  • @Murch : No problem :) It occurs to me that one might run one's own pruned blockchain node (without a wallet, of course), and assign that as a trusted node for an SPV client. Commented Jul 24, 2015 at 17:00

2 Answers 2

4

Currently, only full-nodes, i.e. nodes that have the complete blockchain inventorized relay blocks. Personally, I've recently encountered the first problem, when my Linux partition ran out of storage, yet if I had chosen a bigger partition size, I'd be able to even afford a multiple of the 50GiB easily.

  • Storage usage: Currently, the blockchain is about 50GiB. If it continues to grow at 1MiB per 10 minutes, storing the complete blockchain should remain affordable for those that want to.
    For all the others, there now exists the option to run a pruning node. Once pruning nodes will be enabled to relay blocks, I would expect that the number of serving nodes will start to climb again.
    There would need to be some nodes with the complete blockchain to secure history, though.

  • Client startup time: This may become a problem at some point, but the blockchain data doesn't get checked every start-up, rather synchronization only runs once for each block. So, with a current computer, I don't think it is an issue now or in the foreseeable future.

  • First-time synchronization: Synchronization has been dramatically improved with the release of Bitcoin Core 0.10. Now, only the block headers have to be processed in order and all other block data may be processed in any order. This and other tweaks have drastically reduced the time necessary to catch up with the network. My computer can now do initial synchronization within a few hours. As processing power will scale, I expect this to remain manageable for the foreseeable future.
    Update: The coming 0.12 release will additionally increase synchronization speed by x5, due to validation of signatures being run through libsecp256k1, a library that has been specifically coded to run Bitcoin operations more efficiently.

-1

It IS a problem - the synchronization time and size of the blockchain is too long and large, respectively.

But for many other business it may be OK because not too many transactions.

There needs to be a solution for bitcoin, blockchain size and synchronization times. It's the main reason I do not use bitcoin.

1
  • This answer only addresses a small part of the question, i.e. whether there is a problem. However, it doesn't explore any solutions or explain why the problem isn't severe as the asker requested. Therefore, I don't find it helpful to this question and have downvoted it. Please elaborate and answer the whole question, so that I may turn my downvote into an upvote instead.
    – Murch
    Commented Nov 6, 2015 at 14:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.