Mailinglisten-Archive |
Hallo Ilja, ein unique-Index kann durchaus anders sein als ein "normaler" Index. Soweit ich weiss ist dies auch bei Oracle, MS-SQL und DB2 der Fall - d.h. die verwenden eine andere Form als bei einem "normalen" Index - evtl. aber nur optional das hab ich gerade nicht genau im Kopf. Warum kann der anders sein? Ganz einfach: Bei einem unique-Index gibt es immer die Anzahl 1 pro Key. D.h. Statistikinformationen über die Key-Häufigkeit können entfallen. Da es immer nur eine Row pro Key gibt braucht man auch keine Verwaltung der Rows pro Key. Sowas macht den Index kleiner und sollte eigentlich schneller sein. Ich vermute nun das du hier einen Seiteneffekt des Key-Caches erlebst. Ich denke der Key-Cache greift nur bei einem normalen Index - nicht aber bei einem Unique Index. Der Key-Cache läd gleich ganze Blöck in den Speicher und ist daher schneller bei den einzelnen Elementen und ist daher schneller als der nicht gecachte Unique Key. Das ist alles nur Vermutung. Testen könntest du das mal mit dem MySQL-Admin indem du die Hitrate des Key-Cachs bei beiden Varianten vergleichst. Gruß, Andreas -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive