Ett klustrat index är en speciell typ av index som organiserar den fysiska lagringen av data i en databastabell. I ett klustrat index lagras dataraderna i samma ordning som indexnyckeln. Detta innebär att när en fråga exekveras med hjälp av det klustrade indexet kan databasen direkt komma åt data utan att behöva utföra någon ytterligare sortering eller sökning.
Klustrade index kan förbättra prestandan för frågor som hämtar data i ordning efter indexnyckeln. Till exempel, om du har en tabell över kunder och du vill hämta alla kunder i alfabetisk ordning efter efternamn, skulle ett klustrat index i efternamnskolumnen tillåta databasen att snabbt komma åt data utan att behöva sortera den.
Klustrade index kan också förbättra prestandan för join-operationer. När två tabeller sammanfogas måste databasen hitta alla matchande rader i varje tabell. Om tabellerna är klustrade i samma kolumn kan databasen använda de klustrade indexen för att snabbt hitta de matchande raderna.
Klustrade index är inte alltid det bästa valet för en tabell. Om du har en tabell som uppdateras ofta kan ett klustrat index sakta ner prestanda eftersom databasen hela tiden måste uppdatera indexet när rader infogas, tas bort eller uppdateras. I sådana fall kan det vara bättre att använda ett icke-klustrat index.
I slutändan beror beslutet om huruvida ett klustrat index ska användas eller inte på de specifika behoven i din applikation. Om du har frågor som hämtar data i en viss kolumnordning, eller om du ofta går med i tabeller, kan ett klustrat index förbättra prestandan. Men om du har en tabell som uppdateras ofta kan ett icke-klustrat index vara ett bättre val.