Hi Stephen,
We have some (internal) applications that do a fair amount of queries
(10-100 per minute), where we do complex JOIN:s on 10+ tables. The
result sets are usually a couple of hundred rows, and the main issue
with "too much effort" to cache elsewhere is simply that the table
dependencies are complicated (by these JOIN:s), which makes it a win
to have the database handle dependency tracking and caching. (That's
what a database is good for, right?)
All the best,
Fredrik
9 jan 2009 kl. 11.01 skrev Stephen R. van den Berg:
External clients on the local mysql database of Roxen?
Is that something that happens a lot in your applications?
With respect to "too much effort"...
The MySQL query cache is useful if one has queries with longer than
trivial runtimes and comparatively small resultsets. The way Roxen
uses the local MySQL database, this never happens. The queries:
- Either have very short runtimes because they are indexed properly.
- Or if they run longer, then the query is some kind of status/
maintenance
query which is not intended to be called a lot in rapid succession.
- Or have very large resultsets, but should not be cached in that
case,
since they are not performance-critical (the problem is the large
resultset to begin with).
So that would imply that maintaining the query cache in MySQL is
close to
useless for the Roxen local database.
Any caching needed will be done by the OS due to filesystempages
left in RAM.
Caching in MySQL as well, will just keep around that data in memory
*twice*.
--
Fredrik Noring, Roxen Internet Software