SQL Server 2008 R2 High Buffer I / O verursacht


8

Ich versuche, die Leistung auf einem SQL Server, den wir für unseren Dokumentenverwaltungsserver haben, zu beheben, und heute hat die Leistung ein Allzeittief erreicht.

Wenn ich mir das Management Data Warehouse (MDW) ansehe, das ich kürzlich eingerichtet habe, sehe ich einen großen Anstieg in der Puffer-E / A. Die kombinierte SQL-Wartezeit liegt im Bereich von 1500 bis 2000 ms und ist damit erheblich höher als normal (ca. 500 ms). Der große Anteil dieses Anstiegs ist die Puffer-E / A.

Da ich kein DBA bin und dies aus Notwendigkeit tue, bin ich massiv überfordert.

Gibt es eine Möglichkeit zu erkennen, warum die Puffer-E / A stark zugenommen hat? Ist dies wahrscheinlich auf eine Abfrage zurückzuführen, die große Datenmengen abruft, oder auf eine falsche Konfiguration der SQL Server-Speicherbeschränkungen? Gibt es etwas Spezielles (oder Allgemeines), das ich mir ansehen sollte, oder DMVs, die ich abfragen kann, um bei der Fehlerbehebung zu helfen?

Der Server ist SQL Server 2008 R2. Es handelt sich um eine VM mit zwei vCPUs und 8 GB RAM, wobei die Festplatten auf einem separaten Array in einem SAN gehostet werden.

Geben Sie hier die Bildbeschreibung ein

Die obigen Grafiken wurden alle mit SQL Server Management Data Warehouse erstellt .

Antworten:


9

Wenn Sie sich das Diagramm mit den Wartezeiten genau ansehen, zeigen die farbigen Balken tatsächlich Wartezeiten an, nicht E / A-Wartezeiten.

Das E / A-Diagramm zeigt auch eine erhöhte Systemfestplattenauslastung , nicht die SQL Server- Festplattenauslastung.

Angesichts der Tatsache, dass sich das Speicherdiagramm Ihrer Systemspeichergröße nähert, wenn die Systemauslastung im Laufe der Zeit zunimmt, ist Ihre Instanz meiner Meinung nach für die aktuelle Einstellung für den maximalen Serverspeicher (oder die Einstellung für den maximalen Serverspeicher ist überhaupt nicht festgelegt) und eine oder überlastet Weitere SQL Server-Speicherpools werden auf die Festplatte ausgelagert.

Die Lösung besteht darin, die maximale Serverspeichereinstellung zu verringern (oder auf einen geeigneten Wert festzulegen, wenn sie nicht festgelegt ist). In meiner Antwort hier finden Sie eine ausführlichere Antwort aus einem ähnlichen Szenario sowie in meinem Blogbeitrag:

Ist der Speicher meines SQL Servers überlastet?

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.