Ich habe eine asp.net-Website mit vielen Abfragen zum Einfügen, Aktualisieren und Löschen, die für meine Datenbank ausgeführt werden.
Vor einigen Tagen habe ich einen Volltextindex für zwei Spalten einer Tabelle erstellt. Danach stellte ich fest, dass die Speicher- und Festplattennutzung des SQL Server-Prozesses springt und die Aktualisierungen langsamer sind, wenn auf der Website Aktualisierungsabfragen für diese Tabelle ausgeführt werden. Die Abfragen wurden ohne Leistungsprobleme ausgeführt, bevor der Volltextindex erstellt wurde.
Ich habe auch festgestellt, dass Aktualisierungsabfragen, die zuvor sehr einfach waren, jetzt kompliziert sind, da der Ausführungsplan jetzt Dinge wie die Aktualisierung des Volltextindex enthält. Dies ist Teil eines neuen Ausführungsplans, der nach dem Aktivieren von Volltext kompliziert wurde:
In einigen Stunden, in denen ich den Inhalt der Website aktualisierte, wurden 5000 Aktualisierungsabfragen ausgeführt, und ich denke, dass die Volltextindizierung jedes Mal für jede Zeile durchgeführt wird.
Sollte ich die Volltextsuche beim Start der Zeilenaktualisierung deaktivieren und dann wieder aktivieren (wie in dieser verwandten Frage )?
Kann ich SQL Server anweisen, die Volltextindizierung für 5 Minuten zu stoppen und dann mit der Indizierung neuer Daten zu beginnen?
Gibt es eine bessere Alternative? Ich verwende SQL Server 2012.
quelle