You certainly need to have people validating incoming blocks, and currently you need to have at least some nodes archiving all the data if you want to be able to reconstruct the whole history. But there is a lot of research going on in regards to state pruning, which would let nodes discard parts of the chain that are not interesting.