PDA

View Full Version : DB Ausgelastet



homerun
03-06-02, 07:03
Hallo
Wir haben da so ein Problem mit unserer AS/400
Manchmal ist die Datenbankauslastung extrem hoch
und dann läuft gar nichts mehr , die Anwendungen
schleichen , gähn kann man da wo was schrauben ?
Die 400 ist "Eigentlich ein Dampfhammer aber
wenn die DB Ausgelastet ist kann man auch ein
PC nehmen .

Gibt es da eine Möglichkeit ???


Danke schonmal

Liebhoff
03-06-02, 07:46
Hallo homerun,

Insgesamt fehlen sicherlich eine Menge Informationen, was auf Eurer AS/400 so läuft, denn davon hängt die Gesamtleistung ja schließlich ab.

Allgemein kann man nur einige "Denkansätze" geben. Ich denke zum Beispiel, daß es nicht die DB ist, sondern die darauf aufsetzenden Jobs und ihr Umgang mit der DB.

Einer der Hauptgünde, die ich kenne, die für eine schlechte Performance verantwotlich sind ist die intensive und unkontollierte Anwendung von QRY/400. Da kann man schon was machen, User erzeihen Regeln und Jobsteurung optimieren.

Ein zweiter Grund können auch schlecht programierte Datenbankzugriffe sein. Wenn z.B. ein Programm einen Datensatz nach dem lesen nicht wieder frei gibt, "stehen" alle anderen Anwendungen die den Satz nutzen wollen und sei es nur zur Anzeige.

Thomas

synus
03-06-02, 09:24
Hallo homerun

Ein sehr grosser Performance-Fresser können
auch ODBC Zugriffe sein. Job QZDASOINIT
im SBS QSERVER.

Roberto

homerun
03-06-02, 09:53
Hallo
Was heisst

Insgesamt fehlen sicherlich eine Menge Informationen,
was auf Eurer AS/ 400 so läuft, denn davon hängt die
Gesamtleistung ja schließlich ab" .

Nun dazu kann ich sagen , "wir" schauen bzw
versuchen ja herauszufinden woran diese
Geschwindigkeits Verluste kommen.
Weil diese Probleme ja NICHT immer sind.
Und so ist es umso schwerer die Ursache zu finden.
Nun versuchen wir mit "wrksysact" den job zu finden
der dafür verantwortlich sein könnte.
Oder gibt es da etwas besseres ?

homerun

homerun
03-06-02, 09:59
@synus

Hallo
hmm wenn dem so ist , und dies die Ursache sein soll dann versteh ich was nicht.
Die meissten / viele Anwendungen greifen über ODBC auf die DB zu . Dafür ist es doch gedacht
oder ist dies falsch ? Zumal wenn die DB Kap.
bei über 90 % ist hat die CPU Auslastung wenns hoch kommt 40 % . Das ist es ja ist doch komisch oder ?


Wer weiss Rat ?????

alex
03-06-02, 10:58
@homerun

Hey,

DB Auslastung von 90 % heisst eine Auslastung des ASP von über 90 % ?? Hier wäre dann wohl ein Festplattenausbau nötig oder mal die DB nach Speicherfresser zu durchsuchen. Manchmal hilft ein IPL um die Maschine wieder etwas schneller zu bekommen.
Vielleicht kannst du auch mit dem Systemwert
QPFRADJ was erreichen.

Fuerchau
03-06-02, 11:29
ODBC-Zugriffe stellen häufig ein Performance-Problem dar, da diese Zugriffe ziehmlich unkontrolliert durchgeführt werden.
Feststellbar ist das z.b. mittels WRKACTJOB, den Cursor auf die CPU%-Spalte stellen und mittels F16 neu sortieren. Die CPU-Fresser werden dann nach oben sortiert. Mittels Auswahl 5 (Mit Job arbeiten) und dann z.B. den Stack (Auswahl 11) zu prüfen. Tauchen dann dort Programme auf, die auf SQL hinweisen, hat man schon die Probleme eingekreist.

Bei ODBC-Zugriffen wird häufig nach Daten selektiert (z.B. MS/Query, MS/Access) ohne die Zugriffspfade der AS/400 zu berücksichtigen oder zu kennen.
Werden die Zugriffe über die Zugriffspfade geregelt (WHERE-, GROUP-, ORDER BY-Klauseln), braucht die AS/400 keine temporären Indexe zu generieren. Allein diese Aktionen liefern schon häufig Belastungen >50% !
Es können beliebig viele LF's auf der AS/400 angelegt werden, um die Anforderungen per ODBC zu erfüllen.

Bei MS/Access, MS/Query ist aber darauf zu achten, dass dann ggf. auf die LF zugegriffen wird, wenn die PF benutzt wird und diese mehr als 32 LF's hat, kann MS/Access bzw. MS/Query "hängenbleiben" !

homerun
03-06-02, 12:05
@alex

Hallo
hhmmm das der Plattenspeicher damit gemeint ist , das denke ich nicht, weil der ASP gerade mal mit 61% bei 314 gig belegt ist. Das muß was anderes sein bei 95% würde ich das ja verstehen aber nicht bei 61% . Seh ich doch richtig oder ?

alex
03-06-02, 14:36
@homerun

wenn du den Befehl WRKSYSSTS aufrufst, kannst
du oben rechts die Plattenauslastung in % erkennen und oben links die aktuelle CPU Belastung. Wie kommst du an die Auslastung der DB ?

Uwe Kohlberg
03-06-02, 15:25
Hallo ,

man sollte vielleicht mal die Überwachung über den Operation Navigator den ganzen Tag mitlaufen lassen. Dann sieht man auch wann, wer und wie die Auslasung ist. Desweiteren schlage ich vor mal die Datenbankgruppen PTF´s einzuspielen. Das hilft in den meisten Fällen. Über das Menü GO DISKTASKS und Auswahl 1 solltest du die Plattenbelegung mal überprüfen ( wie ja in einer anderen Antwort schon gesagt wurde )

Uwe