I have an Android client that deals with product items and I would like to 
create an interface for displaying the most popular programs at any given 
time.

I have read and used shard counters to achieve highly scalable and parallel 
counting. This has been working well as far as counting is concerned.

However, the problem starts when it comes the time to calculate the top 10 
most popular product items for a single request, I have to fetch them all 
product entities first, fetch the shard counters of each and add them up and 
then finally sort them to get the most popular ones.

The problem here is that in order to find out whats the most popular I have 
to recalculate all shard counters. Multiply that by 10000 product items and 
my request for a single user becomes slow as hell.

I need to very quickly calculate the top 10 product items in a LIVE manner. 
Is this even conceivably possible?

I've thought the idea of using a cron job to calculate the result and store 
that instead. Would you recommend me going that way? Has anyone else dealt 
with a similar situation?

Thanks!

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine-java/-/FwefKXsl6_YJ.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to