There are several relevant answers and solutions to mentioned “issues” (not really issues from my point of view):
- Size on HDD — the price of HDD space is decreasing exponentially over time (btw. this is what Dropbox built their whole pricing economy around). Eg. even with commercial solutions — Google Drive, you have 100 GB now for 2 EUR monthly. Right now, Bitcoin (oldest blockchain) is 170GB big. Problem solved.
- You can make a snapshot of state of the blockchain for certain block and store that on permanent storage — eg. IPFS/Datproject/others. Then you consider this state as new Genesis (initial state of blockchain) and start from scratch. To be sure about the “old data”, you simply create a hash of whole dataset and store it in Genesis block. Problem solved.
- Solved by 1 and 2.
Also, I would like to point out that block is not “pointing to address of new block”. I’m not sure if you expressed it wrong or you don’t understand underlying mechanics.
Actually, the new block contains a hash of the past block. In computer science, the linked list is created by having “next” variable to store “link” to next block, maybe this is what caused the confusion.