Large Product catalog with statistics - alternatives to Sql Server?
Posted
by Eric P
on Stack Overflow
See other posts from Stack Overflow
or by Eric P
Published on 2010-04-20T14:33:30Z
Indexed on
2010/04/20
15:43 UTC
Read the original article
Hit count: 180
I am building UI for a large product catalog (millions of products).
I am using Sql Server, FreeText search and ASP.NET MVC.
Tables are normalized and indexed. Most queries take less then a second to return.
The issue is this. Let's say user does the search by keyword. On search results page I need to display/query for:
- First 20 matching products (paged, sorted)
- Total count of matching products for paging
- List of stores only of matching products
- List of brands only of matching products
- List of colors only of matching products
Each query takes about .5 to 1 seconds. Altogether it is like 5 seconds.
I would like to get the whole page to load under 1 second.
There are several approaches:
Optimize queries even more. I already spent a lot of time on this one, so not sure it can be pushed further.
Load products first, then load the rest of the information using AJAX. More like a workaround. Will need to revise UI.
Re-organize data to be more Report friendly. Already aggregated a lot of fields.
I checked out several similar sites. For ex. zappos.com. Not only they display the same information as I would like in under 1 second, but they also include statistics (number of results in each category).
The following is the search for keyword "white" http://www.zappos.com/white
How do sites like zappos, amazon make their results, filters and stats appear almost instantly?
© Stack Overflow or respective owner