Ich habe eine ziemlich große Tabelle (> 10 Millionen Zeilen) mit häufigen Rohoperationen. Es hat richtige Indizes, aber sie werden schnell fragmentiert. Ohne einen regelmäßigen Wartungsplan für die Indexreorganisation / -wiederherstellung kann die Indexfragmentierung leicht über 90% liegen.
Im Moment habe ich dies behoben, indem ich die Indizes täglich neu organisiert und wöchentlich neu erstellt habe. Ich habe auch mit Füllfaktoren usw. herumgespielt, um die Fragmentierung geringer zu halten.
Mein Hauptproblem ist, dass SQL Server die Indizes ignoriert und stattdessen vollständige Tabellenscans durchführt, wenn die Indizes zu fragmentiert werden. In diesem Fall wird die Anwendung fast beendet, da wiederholte Scans einer so großen Tabelle sehr schwer sind. Ich bin mir ziemlich sicher, dass die Verwendung eines fragmentierten Index in diesen Fällen schneller wäre.
Gibt es eine Möglichkeit, SQL Server den Index unabhängig von seiner Fragmentierung verwenden zu lassen?