title: What is the right way to store 'historical data' into database in laravel?
body: <p>I'm creating an E-commerce mobile application by using Laravel as back-end development.</p>
  
  <p><b>Scenario</b>: I have a Product table which store some information about the product. Whenever user buys a product, he will get a purchase history record (which will show the product information) that will be stored into the database. So when the seller update their product information, the product information of the user's purchase history record will not be affected.</p>
  
  <p><b>Problem:</b> If I just simply create a user's purchase history table to store the record for each user, I think it will be a lot of spaces required in the database.</p>
  
  <p><b>Question:</b> Is there any better way recommended to store the purchase history record? Or is there a way to create something like a 'snapshot' for the record before the product has been updated or deleted by the seller?</p>