Manage statistics with drupal I have a site that get statistics on products. I get data from an external source to update the Drupal DB to register a buy on a product and the date of that buy to be able to show a flowchart over that product. 

I need this statistics for showing the development of the products selling rate. So if one customer buys a product that information will be sent to my Drupal DB, and that's where I wonder how I should construct my DB so it is optimal in speed and storage. Is it a good idea to create a content type that has a product entity reference and a date? So when a product is bought a new node is created that holds the date and product as information.
Your data should not be nodes, as they do not keep any readable content on their own, they only make sense in connection to a product and in statistics, summaries et cetera, and shouldn't really be displayed on their own. So, you have two ways of dealing with them:


Bad way - make them just a multi-value field in product content type. Not optimal for storage, not really good for filtering.
Make them entities. You only need creation date and product reference on them. Making them entities will expose them to Views for easy filtering and aggregation, to search api if you will ever need to sort by "most sold", and, well, to each and every module that knows about entities. There are many answers and tutorials out there. Hint - your entity should not be a fieldable one. Non-fieldable entities always have only fields defined at creation, so storage is much simpler for them. And simpler == faster.