Index Clustering Faktor


Der Clustering Faktor ist eine Kennzahl, die ausdrückt, inwieweit die Tabellenreihenfolge mit der Indexreihenfolge übereinstimmt.

Als Beispiel dient die chronologisch wachsende SALES-Tabelle, aus der nicht gelöscht wird. Das heißt, dass neue Einträge immer an das hintere Ende der Tabelle geschrieben werden. Ein Index auf SALE_DATE hätte dann zum Beispiel einen sehr guten Clustering-Faktor, da neue Einträge nicht nur am Ende der Tabelle gespeichert werden, sondern auch am Ende des Indexes. Die Tabellenreihenfolge stimmt also gut mit der Indexreihenfolge überein. Ein Index auf der Kundennummer hätte wohl einen schlechteren Clustering-Faktor, da neue Einträge nach der Kundennummer sortiert in den Index eingetragen werden. Das wird vermutlich nicht immer am ende des Indexes sein.

Über den Autor

Photo of Markus Winand
Markus Winand stimmt Entwickler auf SQL-Performance ein. Er hat das Buch SQL Performance Explained veröffentlicht und bietet inhouse Schulungen sowie Tuning-Leistungen auf http://winand.at/ an.

?Recent questions at
Ask.Use-The-Index-Luke.com

1
vote
2
answers
5.3k
views

"Order by RAND()" - can use Index?

Feb 23 at 12:06 Markus Winand ♦♦ 936
random index mysql order-by-rand
0
votes
2
answers
1.1k
views

index for better performance for a merge operation

Feb 20 at 11:43 antilet 1
merge index
0
votes
0
answers
2.1k
views

Join with inequalities only

Dec 16 '14 at 12:06 Markus Winand ♦♦ 936
inequality join