Forgive my ignorance on this question, as I don't have much experience in this area. I have a page that uses a mysql COUNT(*)
query to return a user's stats. For example, something like:
SELECT COUNT(*) FROM worker WHERE worker_id = '1234';
It uses the index for worker_id
and checking out the EXPLAIN
seems that the query looks good. However, this performs absolutely brutally, and can take 5+ seconds for a single query on a table with a million+ rows. Additionally, this is quite a common query, and sometimes it will result in a mysql timeout error with multiple queries trying to run this.
What would be a good way to 'solve' this issue? The information changes quite rapidly so I don't think caching it would work. How would I go about fixing this, and what do some large sites do the show stats (for example, Facebook Friends or Twitter Followers)?