Also Leute, ich habe gerade über folgende Frage nachgedacht:
Ist MySQL schneller, wenn der Index lückenlos ist?
Anderherum gefragt: Ist es langsamger, Abfragen über eine zB mit 1 Million Datensätzen gefüllten Tabelle zu machen, wenn der Index durch viele Löschoperationen “fragmentiert” ist und man ausschließlich den Index für die Suchanfrage benutzt?
Ich werde diese Frage in den nächsten Tagen mal untersuchen. Bis dahin seid ihr aufgefordert, eure Tipps aus dem Bauch heraus abzugeben, gern auch mit ausschmückenden Erläuterungen. 🙂 Natürlich ist es wegen Fairness striktestestestens verboten, das Ergebnis vor der Abgabe eines Tipps zu recherchieren!
Also, ich halte die Voraussetzungen noch einmal fest:
- Beide Tabellen sind gleich aufgebaut.
- Beide Tabellen haben die gleiche Anzahl an Einträgen.
- Beide Tabellen benutzen als Schlüssel id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT.
- Beide Tabellen werden vor dem Test über phpmyadmin optimiert.
- Es werden nur Anfragen auf den Index verwendet.
Aber:
- Bei einer der Tabellen sind durch vorige Löschoperationen “Lücken” im Index.
- In der anderen sind die Indizes durchgängig nummeriert.
Ich freu mich schon auf das Ergebnis! 🙂