Jump to content

SQL2005 nutzt nur eine CPU


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo Zusammen,

 

wir haben ein IBM x3650M2 Server mit zwei Intel Xeon Quad Core CPUs. Darauf wird Windows Server 2003 R2 Enterprise x86 und SQL 2005 Standard ausgeführt. Im Laufe eines Tages werden verschiedene SSIS Pakete ausgeführt die zwischen 3 und 10 Minuten laufen. Während dieser Zeit ist zu beobachten, dass der SQL Server Prozess zu max. 13% ausgelastet ist, was ja implizit bedeutet, dass nur einer von acht Kernen benutzt wird.

 

Im SSMS habe ich schon mit der Ressourcenzuteilung gespielt und von automatisch auf fest zugewiesen geändert. Dabei habe ich 4 Kerne der Prozessoraffinität zugewiesen und die restlichen 4 Kerne der E/A Affinität. Dennoch läuft der sqlservr.exe auf maximal 13% Last.

 

Habt ihr noch eine Idee?

 

Gruß

verpeilo

Link zu diesem Kommentar

Das kann auch stark von den Queries abhängen. Manche Queries lassen sich nicht sinnvoll in Threads aufteilen und laufen dann eben auf einem Core.

Ich kenne hier nur DB2 im Detail. Dort ist das ähnlich und Verhalten kann sort über bestimmt Parameter verändert werden. Wobei das nicht in jedem Fall die Performance steigert. Oft auch im Gegenteil...

 

-Zahni

Link zu diesem Kommentar
Hallo

 

13 % Last sagt ja nur bedingt etwas aus. Das ganze müsste man mal via Perfmon beobachten. Wahrscheinlich braucht er einfach nicht mehr, könnte die einfachste Erklärung sein.

 

Gruß

 

Das hatte ich anfangs auch gedacht. Allerdings funktioniert eine Anwendung die die selbe DB nutzt dann nicht mehr und stürzt wg. Time Out ab...

Link zu diesem Kommentar
Da kann die Anwendung nix für wenn der SQL Server keine Anfragen entgegen nimmt. Wenn ich mich zu dieser Zeit mit dem SSMS verbindet und eine 0815-Abfrage ausführe, kommt auch nix...

Während ein SSIS-Package läuft kannst du keine Abfragen ausführen?

Perfmon während nem SSIS-Package sollte doch aber definitiv kein Problem sein. Irgendwas an deiner Maschine ist da im argen...

 

Die Anwendung nennt sich übrigens SAP... *gg*

Tja... ich enthalte mich mit meiner persönlichen Meinung zu diesem ERP und behalte mir rein technische Unterstützung vor.

 

Lass doch mal den MS SQL BPA drüber laufen und schau was der zu der Maschine und der Instanzkonfiguration sagt: MCSEBoard.de SQL Blog Blog Archive Der SQL Server 2005 Best Practices Analyzer

Link zu diesem Kommentar
Während ein SSIS-Package läuft kannst du keine Abfragen ausführen?

Perfmon während nem SSIS-Package sollte doch aber definitiv kein Problem sein. Irgendwas an deiner Maschine ist da im argen...

 

 

Tja... ich enthalte mich mit meiner persönlichen Meinung zu diesem ERP und behalte mir rein technische Unterstützung vor.

 

Lass doch mal den MS SQL BPA drüber laufen und schau was der zu der Maschine und der Instanzkonfiguration sagt: MCSEBoard.de SQL Blog Blog Archive Der SQL Server 2005 Best Practices Analyzer

 

Perfmon geht natürlich. Welche Leistungsindikatoren brauchst du denn?

Link zu diesem Kommentar

Hm, seit Beitrag #2 schlage ich dir eine Beobachtung via Perfmon vor und die soll nicht gehen und auf einmal geht sie doch... Nunja, sei es drum.

 

Ich würde mir grade bei einem SQL Server hauptsächlich die Themen Arbeitsspeicher, Arbeitsspeicherauslastung, I/O, I/O Auslastung und die CPU-Kerne in ihrer Auslastung anschauen. Konkrete Bezeichnungen von Leistungsindikatoren hab ich grade nicht zur Hand, da musst du selber mal schauen.

 

Je nachdem wie gut die Abfragen etc. definiert oder optimiert sind, solltest du damit die essentiellen Bottlenecks (mein Tipp: Festplatten-I/O und / oder Arbeitsspeicher) herausfiltern können.

Link zu diesem Kommentar

Uuuups, ich fürchte da habe ich mich unglücklich ausgedrückt.

 

Das Statement ist recht simpel. Ein kleines Update von 17 Spalten mit den Werten von 17 Spalten einer anderen Tabelle.

 

UPDATE    SAP.toa01
SET              feld3 = SAP.toa02.feld5, feld4 = SAP.toa02.feld6, feld5 = SAP.toa02.feld7, feld6 = SAP.toa02.feld8, feld7 = SAP.toa02.feld9, feld8 = SAP.toa02.feld10, feld9 = SAP.toa02.feld11, feld10 = SAP.toa02.feld12, feld11 = SAP.toa02.feld13, feld12 = SAP.toa02.feld14, feld13 = SAP.toa02.feld15, feld14 = SAP.toa02.feld16, feld15 = SAP.toa02.feld17, datum1 = SAP.toa02.datum1, feld16 = SAP.toa02.feld18, feld17 = SAP.toa02.feld19, feld18 = SAP.toa02.feld20, feld2 = SAP.toa02.zahl2
FROM         SAP.toa01 INNER JOIN
                     SAP.toa02 ON SAP.toa01.feld20 = SAP.toa02.feld21 AND SAP.toa01.feld21 = SAP.toa02.feld22

 

Perfmon lasse ich morgen ausführen. Ich kann mir aber nicht vorstellen, dass es am Arbeitsspeicher oder an den Festplatten liegt. Der Server ist lediglich für 3 SAP Modulberater (ich und noch zwei) verfügbar, weil es sich nur um eine Testumgebung handelt. Der Server ist mit 32GB RAM ausgestattet und die Festplatten hängen in zwei IBM Storage Systemen mit Fibre Channel Festplatten auf denen die SAP Datenbank verteilt ist. Für ein Produktivsystem deutlich zu wenig, aber die Maschine dümpelt eigentlich sonst nur vor sich hin.

 

In der Tabelle TOA01 sind 1,5 Mio Zeilen. In der TOA02 um die 900.000.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...