Geclusterter Index
Ein Index, der die physische Reihenfolge bestimmt, in der die Zeilen gespeichert sind — die Tabelle selbst IST der Indexbaum, sortiert nach dem Schlüssel. Es kann nur einen pro Tabelle geben. In MySQL/InnoDB und SQL Server ist normalerweise der Primärschlüssel der geclusterte Index.
Unterschied zu einem nicht geclusterten (sekundären) Index: Ein sekundärer Index ist eine eigene Struktur, die auf die Zeile zurückverweist; der geclusterte Index IST die Zeilen in sortierter Reihenfolge. Vorteil: extrem schnelle Lookups und Bereichsabfragen über den Schlüssel — die Daten liegen schon dort, kein zusätzlicher Verweis nötig. Kompromiss: Die Wahl des Clusterschlüssels wirkt sich auf alles aus — ein zufälliger Schlüssel (Random UUID) erzeugt fragmentierte Inserts und "Page Splits"; ein monoton wachsender Schlüssel (Auto-Increment) sorgt für effiziente Inserts, kann aber zu einem "Hotspot" führen. In InnoDB zeigen alle sekundären Indizes auf den Primärschlüssel → ein breiter PK macht alle Indizes größer. Eine zentrale Designentscheidung. PostgreSQL hat keinen echten geclusterten Index (Heap plus einmalige CLUSTER-Sortierung).