Nudge am 04.12.2009

MySQL 5.1: Index vs Partition – ein Performance-Vergleich

in MySQL | Tags: Index, MySQL, Partition, Performance, Vergleich

Ich habe mich auf MySQL 5.1 schon länger gefreut, vor allem, weil Merged Tables und Partitionen auf dem Programm standen. Irgendwie habe ich allerdings nie die Zeit gefunden, diese neuen Features auszuprobieren. Nun ist es soweit, sich den Partitionen zu widmen. Sind sie wirklich so viel schneller als ein Index?

Weiter lesen »

Nudge am 23.01.2009

MySQL Performance Quiz

in MySQL, Witziges | Tags: Index, MySQL, Performance, phpmyadmin

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! 🙂