
Kapitel 6: MySQL-Optimierung 327
w¨urde. Wir glauben, dass wir auch damit Schritt halten k¨onnen, indem wir unseren Syste-
men einfach mehr Festplattenplatz hinzuf¨ugen.
Wir experimentieren auch mit Intel-Linux, um in der Lage zu sein, mehr CPU-Power
preisg¨unstiger zu erhalten. Jetzt, wo wir das bin¨are portable Datenbankformat haben (neu
seit Version 3.23), werden wir dieses f¨ur einige Teile der Applikation benutzen.
Unser anf¨angliches Gef¨uhl sagt uns, dass Linux viel besser bei geringer bis mittlerer Last
ist, w¨ahrend Solaris wegen der extremen Festplatten-Eingabe-/Ausgabe-Geschwindigkeit
(Disk-IO) bei Hochlast besser ist, aber wir k¨onnen noch nichts Endg¨ultiges dar¨uber aus-
sagen. Nach einigen Diskussionen mit den Linux-Kernel-Entwicklern ist das eventuell ein
Seiteneffekt von Linux, das dem Stapel-Job so viel Ressourcen gibt, dass die interaktive Per-
formance sehr gering wird. Dadurch scheint die Maschine sehr langsam und unempf¨anglich
f¨ur Eingaben zu lassen, w¨ahrend große Stapel-Jobs a/jointfilesconvert/293675/bgearbeitet werden. Wir hoffen, dass
dies in zuk¨unftigen Linux-Kernels besser gehandhabt wird.
6.1.4 Die MySQL-Benchmark-Suite
Dieser Abschnitt sollte eine technische Beschreibung der MySQL- Benchmark-Suite (und
von crash-me) enthalten, aber diese Beschreibung wurde noch nicht geschrieben. Momen-
tan k¨onnen Sie eine gute Idee ¨uber den Benchmark bekommen, wenn Sie einen Blick auf
den Code und die Ergebnisse im ‘sql-bench’-Verzeichnis jeder MySQL-Quelldistribution
werfen.
Diese Benchmark-Suite ist als Benchmark gedacht, der jedem Benutzer mitteilt, welche
Dinge in einer gegebenen SQL-Implementation gut performen und welche schlecht.
Beachten Sie, dass dieser Benchmark single-threaded ist. Daher misst er die minimale Zeit
der Operationen. In Zukunft planen wir, auch etliche multi-threaded Test hinzuzuf¨ugen.
Beispiele (die auf derselben NT-4.0-Maschine liefen):
2.000.000 Zeilen vom Index lesen Sekunden Sekunden
mysql 367 249
mysql odbc 464
db2 odbc 1206
informix odbc 121126
ms-sql odbc 1634
oracle odbc 20800
solid odbc 877
sybase odbc 17614
350.768 Zeilen einf¨ugen Sekunden Sekunden
mysql 381 206
mysql odbc 619
db2 odbc 3460
informix odbc 2692
ms-sql odbc 4012
oracle odbc 11291
solid odbc 1801
sybase odbc 4802
Im obigen Test lief MySQL mit einem 8 MB Index-Cache.
Comentarios a estos manuales