It's not easily possible to tell from these numbers.
For example:
- You can see a hit, but what was the cost of a miss? If it was a point lookup, it is very low cost.
- Comparing hits to inserts, does not show the cost added to every other query to search the cache (Com_select) that may have not been added to the cache after execution due to judged to be non-deterministic.
- Inserting results into the query cache can cause stalls (mentioned on Rene's post)
- Performance should be judged on 99th+ percentile. Even if it makes some queries faster, has it improved your p99?
If you wanted to take a more wholistic approach, it is good to measure this from the Application with something like NewRelic.
SHOW STATUS LIKE "Com_select"
Variable_name Value
Com_select 0
What does that mean?
As for the wholistic approach .. well, the server tucks away nicely. I never experience any lag and all users are happy with the speed. So there is no strong drive to investigate. Computers are so fast these days. A cheap $15/month VPS can easily handle tens of thousands of users per day.
For example:
- You can see a hit, but what was the cost of a miss? If it was a point lookup, it is very low cost.
- Comparing hits to inserts, does not show the cost added to every other query to search the cache (Com_select) that may have not been added to the cache after execution due to judged to be non-deterministic.
- Inserting results into the query cache can cause stalls (mentioned on Rene's post)
- Performance should be judged on 99th+ percentile. Even if it makes some queries faster, has it improved your p99?
If you wanted to take a more wholistic approach, it is good to measure this from the Application with something like NewRelic.