Unsere SQL Azure-Datenbank enthält eine umfangreiche SELECT
Anweisung, die etwa einmal pro Tag ausgeführt wird. Die schwere SELECT
Anweisung enthält keine Sperrhinweise. Kürzlich haben wir einige Stände in der Produktion beobachtet und hier ist, was sys.dm_exec_requests
für diesen Zeitraum gezeigt wurde ... Die am längsten laufende Abfrage war die schwere, SELECT
die PAGEIOLATCH_SH
Wartezeit hatte. Als nächstes folgten andere Abfragen - meistens INSERT
Anweisungen mit PAGEIOLATCH_EX
Wartezeit, die alle Dutzende von Sekunden lang ausgeführt wurden, anstatt sofort ausgeführt zu werden. Im Grunde genommen SELECT
stört so schwer allein andere Abfragen.
Wie löse ich das? Ich bin damit einverstanden, dass schwer SELECT
langsam läuft, aber andere Abfragen sollten nicht gestört werden.