Anmelden

View Full Version : SQL Optimierung (Anfängerfrage)



Seiten : 1 2 [3] 4 5

andreaspr@aon.at
15-09-12, 16:45
Jetzt muss ich auch nochmal meinen Senf dazugeben, da ich neugirig gemacht wurde.
Ich persönlich mag den Navigator auch nicht besonders, da er für den heutigen Stand der Technik nicht gerade aufregend ist. Abstürtze habe ich auch hin und wieder gehabt.
Und wehe du verwendest eine CA Version die nicht gleich der OS Version vom Server zu verwenden. Da ist es dann schon ein Glücksfall, wenn der DB-Monitor die Daten auch wirklich analysieren kann.

Aber jetzt mal eine ernsthafte Frage an alle die auf dem System irgendwas mit Datenzugriffen machen:
Wie analysiert ihr die Performance bei Datenzugriffen?
*) STRDBG im Green-Screen?
*) STRDBMON im Green-Screen?
*) System Director?
*) Oder gibt es noch andere Möglichkeiten, die ähnliche Informationen geben können wie die oben genannten?
*) Oder sagt ihr dann einfach: "Das geht nicht schneller. Die Maschiene braucht einfach mehr Hauptspeicher und CPU" (hab ich auch schon oft erlebt ;))

Ich bin auch gern bereit neue Analysetechniken kennen zu lernen!

BenderD
16-09-12, 08:11
... Hauptpunkt ist den Aufwand dahin zu konzentrieren, wo es was bringt (80 : 20 Regel: 80 Prozent der Laufzeit werden von 20 Prozent des Codes verursacht). Häufig eingesetzt wird von mir:
- DSPLOG MSGID(CPF1100) und ein wenig Aufbereitung durch Programm oder Excel liefert Laufzeit und CPU Verbrauch von Batchjobs => Feinanalyse für Langläufer und Ausreißer, falls kritisch.
- Debug Messages im Joblog für SQL Zugriffe, wenn man begründete Verdachtsmomente hat, wo ein Problem verursacht wird.
- STRDBMON über die gesamte Maschine mit anschließender Auswertung in absteigender Reihenfolge der Laufzeit. Auswertung mit Ooops Nerv und SQL Scripten.
- Plausibilisierung von Laufzeiten mit Erfahrungswerten. Ein Programm, das 100.000 Datensätze liest, darf dafür ungefähr 100 sec. brauchen, braucht es 3 Minuten, lohnt Aufwand nur, wenn das kritisch ist - will ich das unter 1 Minute bringen, wird das richtig teuer (Anmerkung: das ist auch unter 10 sec. zu bringen => Parallelisierung, oder mit mehr Redundanz in der Datenbank)
- Runtime Statistics für kritische Jobs decken auf, wann Skalierbarkeitsgrenzen erreicht werden (dann kommt Aufwand auf einen zu)
- wichtigste Regel: Immunität gegen Schlauschwätzer und Patentrezepte aufbauen.

D*B


Jetzt muss ich auch nochmal meinen Senf dazugeben, da ich neugirig gemacht wurde.
Ich persönlich mag den Navigator auch nicht besonders, da er für den heutigen Stand der Technik nicht gerade aufregend ist. Abstürtze habe ich auch hin und wieder gehabt.
Und wehe du verwendest eine CA Version die nicht gleich der OS Version vom Server zu verwenden. Da ist es dann schon ein Glücksfall, wenn der DB-Monitor die Daten auch wirklich analysieren kann.

Aber jetzt mal eine ernsthafte Frage an alle die auf dem System irgendwas mit Datenzugriffen machen:
Wie analysiert ihr die Performance bei Datenzugriffen?
*) STRDBG im Green-Screen?
*) STRDBMON im Green-Screen?
*) System Director?
*) Oder gibt es noch andere Möglichkeiten, die ähnliche Informationen geben können wie die oben genannten?
*) Oder sagt ihr dann einfach: "Das geht nicht schneller. Die Maschiene braucht einfach mehr Hauptspeicher und CPU" (hab ich auch schon oft erlebt ;))

Ich bin auch gern bereit neue Analysetechniken kennen zu lernen!

holgerscherer
16-09-12, 18:53
PS: ist bereits passiert, der Systems Director Navigator for i ist jetzt strategisch (du solltest mal die neusten Reklamezettel von IBM inhalieren)

Dieter, Du weisst doch: was die IBM (oder andere Konzerne) als "strategisch" bezeichnet, sollte man mit gewisser Vorsicht beäugen...

-h

holgerscherer
16-09-12, 18:54
(Seite konnte nicht geladen werden oder extrem lange Ladedauer)

Das deutet oft auf ein DNS-Problem hin. Da hatte ich (und dann die IBM) schon oft meinen Spass damit ;-)

-h

BenderD
16-09-12, 19:04
... wann lässt Du Biggi endlich allein mit ihrem Elend?



Dieter, Du weisst doch: was die IBM (oder andere Konzerne) als "strategisch" bezeichnet, sollte man mit gewisser Vorsicht beäugen...

-h

andreaspr@aon.at
16-09-12, 19:37
Das deutet oft auf ein DNS-Problem hin. Da hatte ich (und dann die IBM) schon oft meinen Spass damit ;-)

Ich greife immer mit der IP auf den Server zu. Nach einspielen einiger PTFs (bei 7.1) gings dann wieder. (Bei diesem Problem ;))

KingofKning
17-09-12, 08:02
Hallo *all,

ich wollte den heute die Indices bereinigen und alle löschen um zu sehen was er neu aufbaut. Bei 2 Bibs geht das klaglos, bei einer läßt er mir immer 43 Indices stehen, auch welche wo die letzte Empfehlung schon über ein Jahr alt sind.

Muß ich bis zum nächsten IPL warten oder auf den richtigen Sonnenstand und Tidenhub.
(Soviel zum Thema Ooopsnerv)

GG

andreaspr@aon.at
17-09-12, 10:23
Muß ich bis zum nächsten IPL warten oder auf den richtigen Sonnenstand und Tidenhub.

Ich finds so witzig. Das erinnert mich an meine Schulzeit. Alle haben sie über Microsoft geschimpft, aber nur ganz wenige hatten was anderes daheim. :D

Du must natürlich nur auf die die Umstellung der Sommer/Winterzeit warten ;)

Spaß bei Seite.
*) Es gibt bei den LIBs 2 Auswahlmöglichkeiten. "Empfohlene Indizes entfernen" und "Alle empfohlende Indizes ..."
Hast du beide Probiert?

*) Ist die Version vom Navigator gleich wie die des Systems?

*) kannst du die einzelnen Empfehlungen manuell löschen?
(Rechts-Klick auf empfehlung --> Aus Liste entfernen)

lg Andreas

KingofKning
17-09-12, 11:00
Wie schon gesagt, der hatte von ca. 400 360 einzel löschen lassen und 43 stehen lassen.

Über alle löschen sind sie jetzt auch alle weg auch die die ich eigentlich behalten wollten, aber ich denke die kommen wieder

GG

KingofKning
11-03-15, 20:41
Hallo *all,
da ja jetzt ein paar Tage ins Land gegangen sind, wollte ich mich mal wieder dem Thema widmen.

Bekomme immer eine Fehlermeldung beim Befehl:

===> CALL qsys2.dump_plan_cache('QGPL','SNAPSHOT1');
Zeichen ',' nach Zeichenfolge ''QGPL' ' ist ungültig. +

Ich finde mit Google aber auch immer nur dieses Beispiel.

Release V5R4.
GG