There are two types of bitcoin nodes: Full nodes and Prune nodes.
- What are Full nodes & Prune nodes?
- Which types of Pros and Cons of each node type?
- Which node type you should use?
- Which technical parameters you should know to make your decisions?
Now, let's get started with Full node
Full node- Fully have four functions of bitcoin nodes: routing, blockchain database, mining, and wallet services [1]
- Stores the whole blockchain database so it requires significant large storage space (up to 284 GB * as of writing).
- Help to secure network with your full node.
- You don't have to resync your wallet when import any other wallet.dat files if you has already synced your wallet with the network (with your initial wallet.dat file). Because when you client fully synced with network, you already have a full copy of the bitcoin blockchain.
284 GB *- This figure requires by Bitcoin client when you install it today.
- The real blockchain size for today is 255522 MB, according to [3]
Prune nodePros:- Required about 5 GB by default (a little it more than 5 GB). [a]
- You don't have store all blockchain database on your computer
- You can run a prune node to get experience and pratice with Bitcoin core without significant pressure on your computer storage space.
[a]: In reality, you will prepare at least a little more than 5GB for your prune node with a minimum storage value for blocks (at 2 GB). They are included by:
- Chainstate: 3.5 GB
- Blocks: 2 GB
- Initial setup: 52.1 MB (see the below image)
Fortunately, you can set up storage space for your prune node, up to 99 GB (tested by minefarmbuy:
https://bitcointalksearch.org/topic/m.46959793)
How to set up storage space?
1. Bitcoin.confSet up prune=X in your bitcoin.conf file. Remember that X is the storage amount in MB, so if you want your prune node stores up to last 99 GB of the network, you have to type : prune=99000.
2. Wallet optionsYou can more easily do it with Options > Main > Prune block storage to 99 GB.
Then you will see the red-message: "Client restart required to activate changes."
Cons:- You don't have a full blockchain database on your computer.
- You have to resync your wallet with blockchain if you import a wallet.dat file that contains data synchronised outside the data stored in your prune node. This is very annoying, IMO.
Blockchain size over quarters (2010q3 to 2019q4)
[2]Details:
+-------------------+
| quarter bs_gb |
|-------------------|
1. | 2010q3 .001 |
2. | 2010q4 .01 |
3. | 2011q1 .015 |
4. | 2011q2 .188 |
5. | 2011q3 .449 |
|-------------------|
6. | 2011q4 .631 |
7. | 2012q1 .876 |
8. | 2012q2 1.672 |
9. | 2012q3 2.897 |
10. | 2012q4 4.255 |
|-------------------|
11. | 2013q1 6.406 |
12. | 2013q2 8.713 |
13. | 2013q3 10.727 |
14. | 2013q4 13.468 |
15. | 2014q1 16.567 |
|-------------------|
16. | 2014q2 19.861 |
17. | 2014q3 23.45 |
18. | 2014q4 27.805 |
19. | 2015q1 32.706 |
20. | 2015q2 38.122 |
|-------------------|
21. | 2015q3 45.418 |
22. | 2015q4 53.647 |
23. | 2016q1 63.427 |
24. | 2016q2 73.973 |
25. | 2016q3 84.455 |
|-------------------|
26. | 2016q4 96.236 |
27. | 2017q1 108.975 |
28. | 2017q2 122.299 |
29. | 2017q3 134.716 |
30. | 2017q4 149.114 |
|-------------------|
31. | 2018q1 162.686 |
32. | 2018q2 173.171 |
33. | 2018q3 184.622 |
34. | 2018q4 197.224 |
35. | 2019q1 210.557 |
|-------------------|
36. | 2019q2 226.596 |
37. | 2019q3 242.386 |
38. | 2019q4 284 |
+-------------------+
Suggestions:- Using Full node if you want to use Bitcoin Core wallet; and you have to prepare enough additional free storage for likely increases of data base next one or two years (about 50 GB annually - maybe more than 50 GB because it also depends upon how much data comes from Segwit). See the chart above.
- Avoiding Prune node if you can buy a hard-disk up to 500 GB or 1 TB.
- If you actually want to run a prune node, the best option for you is set up the storage space to 99 GB *. That amount of 99 GB is enough for you to retrieve data up to nearly the last two years. Generally, the network increases about 50 GB annually since 2015q4. You can make estimation of blockchain size next one or two years based on the average blockchain size [4], but I don't think you should make things complicated like that.
- If you can not buy a good harddisk to run Bitcoin Core Full node, that requires less than 300 GB for now, let's turn to choose the other wallets. I recommend the Electrum wallet (Simplified Payment Verification - SPV). SPV wallets are light and don't require too much free storage space to run them on your computer.
- Running Electrum wallet with Electrum personal server and connect it to your full node. See the guide
99 GB *: Where I get that figure?
From:
Sources:[1]: Mastering Bitcoin (Andrea Antonopoulos)
[2]:
https://www.statista.com/statistics/647523/worldwide-bitcoin-blockchain-size/[3]:
https://www.blockchain.com/charts/blocks-size[4]:
https://www.blockchain.com/charts/avg-block-sizehttps://bitzuma.com/posts/moving-the-bitcoin-core-data-directory/https://bitcoin.org/en/full-node#what-is-a-full-nodeBitcoin Q&A: What is the role of nodes? (Andrea Antonopoulos)https://medium.com/coinmonks/the-bitcoin-network-6713cb8713d