A typical solution to this is to store the data outside of the blockchain and then checkpoint a hash of the data snapshot into the blockchain at regular intervals.
This provides tamper resistance to the data.
Incentivizing users or organizations to store large amounts of data is still a problem of course.