Hallo zusammen,
in einer Testdatenbank habe ich eine Tabelle mit einem gruppierten Index. Ferner gibt es Indizes über weitere Felder der Tabelle, die nicht in den gruppierten Index einbezogen sind, z.B. über Datumsfelder. Das ganze läuft in SQL Server 2005 Developer auf Windows XP.
Der gruppierte Index wird benötigt, damit die Daten zu verschiedenen Versionen eines Artikels hintereinander liegen und zeitsparend in automatisierten Prozessen verglichen werden können.
5 Mio. Testdatensätze wurden aus gestellten Text-Files importiert.
Wenn nun ein Feld, das nicht Bestandteil des gruppierten Index ist, geändert wird, bricht die Performance der Applikation, die die Daten automatisch aktualisieren soll, zusammen. Es werden lediglich ca. 60 Datensätze / Minute upgedated.
Die Abfrageverfolgung zeigt, dass hier ein clustered index update erfolgt, obwohl die Felder des gruppierten Index selbst von der Änderung nicht betroffen sind und der gruppierte Index somit nicht umsortiert werden muss. Durch die Änderung wird auch kein zusätzlicher Platz benötigt, da eine Datumsangabe durch eine andere Datumsangabe ersetzt wird.
Wenn hierzu jemand eine Erklärung oder gar Lösung hat, wäre das wirklich hilfreich. Danke vorab für Eure Beiträge !