Ergebnis 1 bis 4 von 4
  1. Beitrag #1
    Themenstarter
    Grand Admiral
    Special
    Grand Admiral
    Avatar von Dalai
    • Mein System
      Notebook
      Modell: Thinkpad T43 mit 15" UXGA (1600x1200), 2x 1 GiB RAM, 100GB HD, Bluetooth, GBit LAN, ATi X300
      Desktopsystem
      Prozessor: AMD Athlon X4 880K (Godavari)
      Mainboard: Gigabyte GA-F2A88X-D3HP
      Kühlung: Noctua NH-U9B mit 2x NF-B9 Redux PWM (an NA-YC1)
      Arbeitsspeicher: G.Skill Ares F3-2133C11D-16GAR: 2x 8 GiB DDR3-2133 (3,5 GiB nutzbar mit x86)
      Grafikkarte: Zotac GeForce GTX 1060 6GB AMP Edition
      Display: Dell U2410, 24 Zoll, IPS, 16:10
      SSD(s): Samsung 850 Evo 250 GB
      Festplatte(n): WD20EZRZ (WD Blue) 2000GB SATA3, WD20EZRX (WD Green) 2000GB SATA3
      Optische Laufwerke: Pio DVR-212 (DVD-RAM), ASUS E818A6T (DVD-ROM), Pio DVD-106S (Slot-in DVD-ROM)
      Soundkarte: Creative SoundBlaster Audigy 2 ZS PCI
      Gehäuse: Lian Li PC-8NB Midi-Tower
      Netzteil: Enermax EMP400AGT MaxPro 400W
      Betriebssystem(e): Windows 7 Professional x64 und immer mal wieder ein neues Linux :-)
      Browser: Mozilla Firefox mit diversen Erweiterungen
      Sonstiges: 2x 120mm Gehäuselüfter (Front und Rückwand), DVBSky T9580, Sharkoon Frontpanel B (2x USB 3.0)

    Registriert seit
    14.06.2004
    Ort
    Meiningen, Thüringen
    Beiträge
    7.049
    Danke Danke gesagt 
    391
    Danke Danke erhalten 
    49

    MSSQL-Server - Wie CPU-Last analysieren?

    Hallo Leute .

    In der Hoffnung, dass sich hier im Forum MSSQL-Experten rumtreiben, wende ich mich an euch. [Crosspost in der DelphiPraxis]

    Vorab einige Infos zur Hard- und Software des fraglichen Systems:
    AMD Epyc 7261
    SuperMicro H11SSL-C
    32 GiB RAM
    Windows Server 2012 R2
    MSSQL Server 2017 (mit CU12)
    IIS
    ERP-System, das auf Basis von .NET, IIS und MSSQL arbeitet
    Hinweis: Das System hat bis auf zwei Domains keinen Internetzugang.

    Das Problem stellt sich wie folgt dar: Nach ziemlich genau zwei Wochen Laufzeit des MSSQL-Servers verdoppelt sich die CPU-Last durch den SQL-Server-Prozess und das ändert sich auch mit längerer Laufzeit nicht mehr. Nun wäre ein möglicher Workaround, den MSSQL jedes Wochenende neu zu starten, aber ich würde gern versuchen, herauszufinden, was genau die CPU-Last verursacht.

    Graphen aus Munin for Windows:
    processor by day (leicht unterschiedliche Skalierung)
    Klicke auf die Grafik für eine größere Ansicht 

Name:	processor-day_2019-07-07.png 
Hits:	14 
Größe:	46,5 KB 
ID:	38849Klicke auf die Grafik für eine größere Ansicht 

Name:	processor-day_2019-07-10.png 
Hits:	11 
Größe:	47,8 KB 
ID:	38850Klicke auf die Grafik für eine größere Ansicht 

Name:	processor-day_2019-07-26.png 
Hits:	9 
Größe:	29,4 KB 
ID:	38851
    processor by month
    Klicke auf die Grafik für eine größere Ansicht 

Name:	processor-month_2019-07-07.png 
Hits:	10 
Größe:	26,0 KB 
ID:	38852Klicke auf die Grafik für eine größere Ansicht 

Name:	processor-month_2019-07-10.png 
Hits:	9 
Größe:	26,8 KB 
ID:	38853Klicke auf die Grafik für eine größere Ansicht 

Name:	processor-month_2019-07-26.png 
Hits:	11 
Größe:	27,9 KB 
ID:	38854
    Die Lastspitzen werden durch das zweimal wöchentliche Backup der MSSQL-DBs erzeugt.

    Screenshots von ProcessHacker:
    Klicke auf die Grafik für eine größere Ansicht 

Name:	ProcessHacker - General_blurred.png 
Hits:	11 
Größe:	19,8 KB 
ID:	38859Klicke auf die Grafik für eine größere Ansicht 

Name:	ProcessHacker - Performance.png 
Hits:	10 
Größe:	28,7 KB 
ID:	38856Klicke auf die Grafik für eine größere Ansicht 

Name:	ProcessHacker - Statistics.png 
Hits:	10 
Größe:	20,6 KB 
ID:	38857Klicke auf die Grafik für eine größere Ansicht 

Name:	ProcessHacker - Threads.png 
Hits:	9 
Größe:	60,8 KB 
ID:	38858
    Hier sieht man, dass sqlservr.exe permanent ~0,11% Last verursacht; aktuell sind es 0,15%. Nach einem Neustart des MSSQL ist dieser Wert - wie gesagt für zwei Wochen - irgendwo deutlich unter 0,05, IIRC meist 0,01%.
    Außerdem ist ein hohes Cycles delta von ~40 Millionen für einen Thread erkennbar, bei einem Aktualisierungsintervall von 1 Sekunde; ich hab auch schon Cycles deltas von ~60 Millionen gesehen.

    Der Aktivitätsmonitor im MSSQL Management Studio war keinerlei Hilfe, denn die sichtbaren lastverursachenden SQL-Statements waren nur die vom Aktivitätsmonitor selbst .

    Nun könnte man natürlich sagen: "Was regt man sich über 1% CPU-Last auf", aber ich halte das Verhalten für nicht normal, wenn es zwei Wochen lang ohne diese Last funktioniert.

    Gibt's unter den Lesern jemanden, der sich mit MSSQL auskennt und mir Tips geben kann, wie und wo man das anfangen kann zu analysieren?

    Grüße
    Dalai
    Geändert von Dalai (26.07.2019 um 18:21 Uhr)

  2. Beitrag #2
    Technische Administration
    Dinosaurier

    Avatar von tomturbo
    • Mein System
      Notebook
      Modell: Microsoft Surface Pro 4
      Desktopsystem
      Prozessor: Phenom II X6 1045T
      Mainboard: Gigabyte 970A-UD3
      Kühlung: CoolerMaster Hyper 412S
      Arbeitsspeicher: 2x8GB Crucial Ballistix Tactical DDR3-1866
      Grafikkarte: Sapphire R7 250E ultimate / lüfterlos
      Display: HP ZR2740w (2560x1440)
      SSD(s): 2xSamsung 830 128GB
      Festplatte(n): Seagate ST31500341AS 1500GB
      Optische Laufwerke: Samsung Brenner
      Soundkarte: onboard
      Gehäuse: Fractal Design Define R4
      Netzteil: XFX 550W
      Betriebssystem(e): Arch Linux, Windows VM
      Browser: Firefox + Chromium + Konqueror
    • Mein DC

      tomturbo beim Distributed Computing

      Aktuelle Projekte: SETI@HOME, Universe@HOME, Asteroids@HOME
      Lieblingsprojekt: SETI@HOME
      Rechner: Xeon E3-1245V2; Raspberry Pi 3; NUC6i3BNH
      Mitglied der Kavallerie: Nein
      BOINC-Statistiken:

    Registriert seit
    30.11.2005
    Ort
    Österreich
    Beiträge
    6.936
    Danke Danke gesagt 
    205
    Danke Danke erhalten 
    8
    Datenbanken tun einiges im Hintergrund abhängig vom Füllgrad der Tabellen oder Indices.
    Da werden Zähler aktualisiert, Füllstände aktualisiert, fragmentierte Records bereinigt, Systemtabellen aktualisiert, Tabellen reindiziert, Statistiken angelegt, etc ppp.
    Alles viele Gründe warum auf einem Datenbankserver permanent was los ist.
    Geschwätzige, eierlegende Wollmilchsäue wie MS$SQL oder Oracle tun viel mehr als man denkt.
    Geändert von tomturbo (29.07.2019 um 06:23 Uhr)

    4000 U/min wo der Diesel aufhört und richtige Motoren zu arbeiten beginnen

    "Ubuntu" - an African word meaning "Gentoo is too hard for me"

    vegan aus Überzeugung

    real man don't click

  3. Beitrag #3
    Themenstarter
    Grand Admiral
    Special
    Grand Admiral
    Avatar von Dalai
    • Mein System
      Notebook
      Modell: Thinkpad T43 mit 15" UXGA (1600x1200), 2x 1 GiB RAM, 100GB HD, Bluetooth, GBit LAN, ATi X300
      Desktopsystem
      Prozessor: AMD Athlon X4 880K (Godavari)
      Mainboard: Gigabyte GA-F2A88X-D3HP
      Kühlung: Noctua NH-U9B mit 2x NF-B9 Redux PWM (an NA-YC1)
      Arbeitsspeicher: G.Skill Ares F3-2133C11D-16GAR: 2x 8 GiB DDR3-2133 (3,5 GiB nutzbar mit x86)
      Grafikkarte: Zotac GeForce GTX 1060 6GB AMP Edition
      Display: Dell U2410, 24 Zoll, IPS, 16:10
      SSD(s): Samsung 850 Evo 250 GB
      Festplatte(n): WD20EZRZ (WD Blue) 2000GB SATA3, WD20EZRX (WD Green) 2000GB SATA3
      Optische Laufwerke: Pio DVR-212 (DVD-RAM), ASUS E818A6T (DVD-ROM), Pio DVD-106S (Slot-in DVD-ROM)
      Soundkarte: Creative SoundBlaster Audigy 2 ZS PCI
      Gehäuse: Lian Li PC-8NB Midi-Tower
      Netzteil: Enermax EMP400AGT MaxPro 400W
      Betriebssystem(e): Windows 7 Professional x64 und immer mal wieder ein neues Linux :-)
      Browser: Mozilla Firefox mit diversen Erweiterungen
      Sonstiges: 2x 120mm Gehäuselüfter (Front und Rückwand), DVBSky T9580, Sharkoon Frontpanel B (2x USB 3.0)

    Registriert seit
    14.06.2004
    Ort
    Meiningen, Thüringen
    Beiträge
    7.049
    Danke Danke gesagt 
    391
    Danke Danke erhalten 
    49
    Hast du einen Ansatz einer Erklärung, warum das erst nach 2 Wochen Laufzeit auftritt?

    Grüße
    Dalai

  4. Beitrag #4
    Technische Administration
    Dinosaurier

    Avatar von tomturbo
    • Mein System
      Notebook
      Modell: Microsoft Surface Pro 4
      Desktopsystem
      Prozessor: Phenom II X6 1045T
      Mainboard: Gigabyte 970A-UD3
      Kühlung: CoolerMaster Hyper 412S
      Arbeitsspeicher: 2x8GB Crucial Ballistix Tactical DDR3-1866
      Grafikkarte: Sapphire R7 250E ultimate / lüfterlos
      Display: HP ZR2740w (2560x1440)
      SSD(s): 2xSamsung 830 128GB
      Festplatte(n): Seagate ST31500341AS 1500GB
      Optische Laufwerke: Samsung Brenner
      Soundkarte: onboard
      Gehäuse: Fractal Design Define R4
      Netzteil: XFX 550W
      Betriebssystem(e): Arch Linux, Windows VM
      Browser: Firefox + Chromium + Konqueror
    • Mein DC

      tomturbo beim Distributed Computing

      Aktuelle Projekte: SETI@HOME, Universe@HOME, Asteroids@HOME
      Lieblingsprojekt: SETI@HOME
      Rechner: Xeon E3-1245V2; Raspberry Pi 3; NUC6i3BNH
      Mitglied der Kavallerie: Nein
      BOINC-Statistiken:

    Registriert seit
    30.11.2005
    Ort
    Österreich
    Beiträge
    6.936
    Danke Danke gesagt 
    205
    Danke Danke erhalten 
    8
    Der Füllgrad und die Lebensdauer der Daten. Nach einer Zeit fängt der Server im Hintergrund zu arbeiten an. Es gibt keine Zeit wo der Server nichts im Hintergrund macht.

    4000 U/min wo der Diesel aufhört und richtige Motoren zu arbeiten beginnen

    "Ubuntu" - an African word meaning "Gentoo is too hard for me"

    vegan aus Überzeugung

    real man don't click

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •