5

I just downloaded the bitcoin client and the full transaction database and did not fail to notice that it took me more than a day to download and check the transaction database and that it occupies more than 2 GB of diskspace.

What will happen when the number of transaction will grow to several millions a day?

Will the Database grow over a TB? Is that even viable ?

1

2 Answers 2

4

Meni's answer is probably correct, but describes a very far future, in my opinion.

In the more near future, I believe we'll see fully-validating nodes that do not keep the entire block chain around. The current reference client implementation uses blockchain + transaction database for validation, which cannot easily support pruning. I'm working on modifying the validation code to use a separate database of just the unspent outputs instead, which is much more efficient and only requires a few hundred MB of storage, in addition to the blocks it wants to keep around.

I'm sure this will open possibilities, but somewhat further ahead, I believe this will lead to a separation between validation nodes and archive nodes. The former relay and can be queried for their memory pool, and check whether transactions are valid, but they cannot serve old transactions or blocks, and hence cannot be used to bootstrap a new node from. For these purposes, one will connect to an archive node (this could be via the P2P protocol, but may as well be HTTP or BitTorrent).

Disclaimer: these are my views/opinions, and may not reflect those of other (core) developers.

3

Some blockchain pruning will be done but it will still be several TB in size. Most Bitcoin users will not run a full node but rather an SPV client, or just an eWallet.

Also, I suspect that most Bitcoin transfers will not be directly on the blockchain.

Your Answer

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

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