Der Laie ist interessiert und macht sich so seine Gedanken.
Dann konkretisiere ich das mal ein wenig.
1. Ist es nicht ganz unwichtig, welche Tbellentypen / Engine man verwendet.
Es gibt an der Stelle einige Unterschiede zwischen InnoDB und Myisam.
2. Cache ist nicht gleich Cache. Ein Query Cache kann man durchaus abschalten. Die Datenbank cacht zusätzlich,aber Abhängig von der Engine unterschiedlich.
Eie Datenbank, die lediglich mit Inserts gefüttert wird, wird kaum Daten im Cache vorhalten. Da kann diese auch 100 Jahre laufen.
Lediglich wenn die Datenbank auch abgefragt wird, fängt diese an Daten im RAM zu halten. Damit wird die Auslieferung von Daten immens beschleunigt.
Ein Querycache z.B. kann anhand eindeutiger SQL Statements
(Identisches SQL Statement in dem Fall ist: "select feld from tabelle" nicht gleich mit "SELECT FELD from TABELLE" auch unterschiedliche Reihenfolge der Felder, where Bedingungen sind in diesem Sinne nicht identisch)
Ergebnisse direkt aus dem RAM bedienen und spart bei dabei massiv Zeit.
Allerdings, ist eine Querycache nur bei sehr statischen Dateninhalten hilfreich.
Änderungen der Daten, egal in welcher form, delete, update, insert, sorgen dafür, dass die gecachten Objekte invalidiert werden.
Damit muss die Ergebnissmenge entweder aus dem gut gefüllten DB Cache oder der Disk erzeugt werden und bleibt nur so lange gültig, so lange sich die Inhalte der betroffenen Tabellen niht ändern.