

Ask HN: Need some help in database design issue - g123g

Just thought to ask it here in case someone has already gone thru this issue before.<p>I am going to have a catalog of about half a million to one million products.<p>On a day to day basis there will be updates to this products, maybe their description or rating will change.<p>New products will added everyday.<p>I need to show things on my website like most popular product, product which is getting more popular (some sort of trending etc.)<p>Now my doubt is how to store all this information in the database.<p>I can store the product information in a table in MySQL. When the daily batch update happens, append the new rows to the table. I need to keep the old rows as I need the historical price and rating information.<p>From this master table run jobs which will take some time to create statistics like most popular products etc.<p>The website runs against this summary table.<p>I am using Python and Pylons for the frontend. I will use celery for creating the jobs.<p>I also need to provide full text search on the product catalog which I think will need to go against master database which might have a million rows so will be quite slow. Is there any other way for it?<p>So is there a good way to store this kind of historical information in the DB and create trend based reports, full text search for some catalog that gets updated on a daily basis?
======
kevinburke
Since I just asked a similar question... you might want to try
codereview.stackexchange.com :)

~~~
g123g
Hi Kevin,

Can you give me the link for the question you asked. I am getting lots of
search results when I go to the codereview site.

