Home » Performance » MySQL » Query speed
Query speed [message #582] Fri, 12 January 2007 11:43 Go to previous message
Charli
Messages: 2
Registered: January 2007
Junior Member
I'm just qurious how mysql does in this case

SELECT COUNT(*) as iTotal FROM messages WHERE memberID = 1 AND read = 'N'

(I know it's better to create a new table that stores these values as columns, so we could grab them with simple selects queries. And we will change this query. I'm just interested for general knowledge)

So let’s now say we have a couple of millions of posts in the table, and a couple of thousand members. memberID is indexed (not together with read, and I guess that's not a good idea to do because that column is updated quite a lot).

The first time a member signs in, the query in the worst cases take 20s (locking the table so other queries can't run). I guess this is fair, a lot of posts and it have to count them one by one since we haven’t indexed read.

But my question is, now that the query has run, if we run the query again a minute later the query will not take a second. Even if the table is updated, so it shouldn't be the query cache. Do mysql store sub results from the count before and use that?

Let say the member signs out and don't return for a hour. Then the query will take 20s again.

Read Message
Read Message
Read Message
Read Message
Previous Topic:Your professional standpoint: high cpu-load...
Next Topic:How to recreate data base from Query Log
Goto Forum:

  


Current Time: Sun Jul 5 17:18:32 EDT 2009

Total time taken to generate the page: 0.00917 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 2.7.7.
Copyright ©2001-2007 FUD Forum Bulletin Board Software

MySQL is a trademark of Sun Microsystems.
InnoDB is a trademark of Oracle Corp.

Percona Performance Forums are a service of Percona, Inc.
Not affiliated with Sun Microsystems or Oracle Corp.