Performance-Troubleshooting von Microsoft SQL Server (2)

Daten im Fluss

Entspricht die Leistung von Microsoft SQL Server nicht den Erwartungen, ist das mehr als ärgerlich, denn die auf der Datenbank basierenden Applikationen sind oft geschäftskritisch. Im ersten Teil unserer Workshop-Serie haben wir Ihnen gezeigt, welche Werkzeuge zur Performance-Ana­lyse zur Verfügung stehen und wie Sie Flaschenhälse erkennen. Im zweiten Teil werfen wir einen genaueren Blick auf die RAM-Nutzung und das Disk-Troubleshooting.
Immer mehr Unternehmen wagen den Schritt in die Cloud. Dabei schieben nur die wenigsten gleich ihre gesamte IT in die Wolke, sondern migrieren zunächst ... (mehr)

Haben Sie das Gefühl, das Netzwerk könnte für die schlechte Performance verantwortlich sein, schauen Sie sich zunächst die Erfolgsrate der Netzübertragung an, allen voran die "TCP Retransmits". Diese können Sie mit PerfMon verfolgen oder den aktuellen Stand schnell mit dem Befehl »netstat -s« ausgeben lassen, in Bild 1 beispielsweise für TCPv4 zu sehen.

Lassen Sie sich Ihre in Windows gemessenen Zahlen auch von Ihren Netzwerkern am Switch-Port bestätigen. Liegt der Wert zu hoch, müssen Sie die zuständigen Netzwerkkomponenten – sowohl am SQL-Server als auch bei dessen Kommunikationspartnern und in der gesamten Signalkette dazwischen – überprüfen und entstören lassen. Sind die Retransmits in Ordnung, nehmen Sie zu einer Zeit, in der der SQL-Traffic nicht allzu hoch ist, eine Performance-Messung etwa mit iPerf [1] vor.

Eventuell zieht ein falsch konfigurierter Switch die Performance herunter? Oder ein Router zwischen dem Client- und dem Servernetz arbeitet nur mit 100 MBit/s? Im Kontext der SQL-Performance ist für Sie besonders wichtig, dass der Server die Daten, die er an die Clients schicken möchte, auch schnell genug über das Netzwerk übertragen bekommt. Schafft er es nicht, so ist eine Mehrbelastung von CPU und RAM programmiert.

Unwahrscheinlicher Flaschenhals CPU

Im Regelfall ist es eher schwierig, einen CPU-Flaschenhals im SQL-Server zu verursachen, sofern dieser ordentlich dimensioniert ist. Von den SQL-eigenen Funktionen hat allenfalls ein Vollbackup einer großen Datenbank das Potential hierzu, wenn die Komprimierung aktiv ist. Den Flaschenhals erkennen Sie daran, dass der PerfMon-Indikator "System / Prozessor-Warteschlangenlänge" über lange Strecken den Schwellenwert von 1 überschreitet.

Behalten Sie unbedingt auch Ihr Antivirus-Programm im Auge. Fehlen wichtige Ausschlüsse oder ist das Scannen von

...

Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019