PDA

View Full Version : ODBC Performance



Seiten : [1] 2

KingofKning
11-10-07, 08:56
Hallo *all,
wir haben bei uns viele Leute mit einer grafischen Oberfläche arbeiten, sodaß für jeden User ein Batch-Job zuständig ist. Hintergrund der Aktion war das wir die interaktive Leistung runterschrauben wollen.

Jetzt haben wir ein Auswertmodul gekauft welches per ODBC die Daten von der AS/400 holt. Der Datenbankjob läuft ja dann auch als Batch, nimmt sich aber soviel CPU das der Rest ins straucheln kommt.
Kann ich irgendwo einstellen das der ODBC-Job eine geringere Priorität hat?

Gruß
Gregor

TARASIK
11-10-07, 09:35
Hallo Gregor,
es gab einmal diese Möglichkeit unter R510 und ich denke die kann mann immer noch anwenden, aber ich denke so einen Eingriff sollte man sich gut überlegen.

IBM - Change Run Priority of ODBC Jobs at V5R1 (http://www-1.ibm.com/support/docview.wss?rs=0&dc=DB520&dc=D900&q1=priority+odbc+jobs+AND+AS400SUMXXYYZZRCH&uid=nas1802941500b48ab4386256cf0004b44a9&loc=en_US&cs=UTF-8&lang=all)

holgerscherer
11-10-07, 11:34
Kann ich irgendwo einstellen das der ODBC-Job eine geringere Priorität hat?


Der Trick sind auch Subsystem- und Klassendefinitionen. Alternativ hebt man andere wichtige Jobs an. Ich mache hier sowas gern dynamisch.

-h

BenderD
11-10-07, 12:58
Hallo,

die spannende Frage ist erst mal, wofür die Ressourcen eigentlich verbrummt werden. Das hört sich nach mangelndem Index Design, schwachbrüstiger Maschine, oder nach der fantastischen neuen Query Engine an (die leider ziemlich buggy ist).

mfg

Dieter Bender


Hallo *all,
wir haben bei uns viele Leute mit einer grafischen Oberfläche arbeiten, sodaß für jeden User ein Batch-Job zuständig ist. Hintergrund der Aktion war das wir die interaktive Leistung runterschrauben wollen.

Jetzt haben wir ein Auswertmodul gekauft welches per ODBC die Daten von der AS/400 holt. Der Datenbankjob läuft ja dann auch als Batch, nimmt sich aber soviel CPU das der Rest ins straucheln kommt.
Kann ich irgendwo einstellen das der ODBC-Job eine geringere Priorität hat?

Gruß
Gregor

holgerscherer
11-10-07, 13:04
die spannende Frage ist erst mal, wofür die Ressourcen eigentlich verbrummt werden. Das hört sich nach mangelndem Index Design, schwachbrüstiger Maschine, oder nach der fantastischen neuen Query Engine an (die leider ziemlich buggy ist).


Dieter, Du weisst doch: im Zweifelsfall kommt alles zusammen ;-)

Ich hatte auch mal einen Kunden, der der Meinung war, eine alte 170er mit 73CPW sollte eine gute SQL-Performance bieten. Angeblich hat ihm das ein IBM-Vertriebler damals gesagt ("Die Maschine reicht für 30 User!").

Meist wird CPU verbraten, und das aus den von Dir genannten Gründen.

-h

KingofKning
12-10-07, 11:41
In diesem Falle ist es so das wohl das Index Design naturgemäß schwachbrüstig ist, da wenn Du ein Auswert-Tool hast mit dem Du nach allen Kriterien auswerten kannst Du naturgemäß nicht sinnvolle Indexe anlegen kannst.
Man könnte dann wohl hinterher schauen welche Abfragen habe ich häufig und sich irgendwie erarbeiten welche Temp. Indicies er erstellt. Wobei ich auf Anhieb noch nicht mal weiß wie das für ODBC-Abfragen rauszubekommen ist.
Habe aber auch noch nicht gesucht

So, schönes Wochende, ich werde jetzt erstmal mit der Bahn in die Schweiz fahren. Wenn ich mich in 2 Wochen noch nicht melde, wißt ihr das ich noch am Bahnhof stehe........


Gruß
Gregor

BenderD
12-10-07, 12:06
STRDBMON ist dein Freund...


In diesem Falle ist es so das wohl das Index Design naturgemäß schwachbrüstig ist, da wenn Du ein Auswert-Tool hast mit dem Du nach allen Kriterien auswerten kannst Du naturgemäß nicht sinnvolle Indexe anlegen kannst.
Man könnte dann wohl hinterher schauen welche Abfragen habe ich häufig und sich irgendwie erarbeiten welche Temp. Indicies er erstellt. Wobei ich auf Anhieb noch nicht mal weiß wie das für ODBC-Abfragen rauszubekommen ist.
Habe aber auch noch nicht gesucht

So, schönes Wochende, ich werde jetzt erstmal mit der Bahn in die Schweiz fahren. Wenn ich mich in 2 Wochen noch nicht melde, wißt ihr das ich noch am Bahnhof stehe........


Gruß
Gregor

AS400.lehrling
12-10-07, 13:04
Der Trick sind auch Subsystem- und Klassendefinitionen. Alternativ hebt man andere wichtige Jobs an. Ich mache hier sowas gern dynamisch.

-h

Na da kannst du ihm auch gleich ein konkretes angebot für deinen jobmanager machen:D
Gruß AS400.lehrling

AS400.lehrling
12-10-07, 13:10
In diesem Falle ist es so das wohl das Index Design naturgemäß schwachbrüstig ist, da wenn Du ein Auswert-Tool hast mit dem Du nach allen Kriterien auswerten kannst Du naturgemäß nicht sinnvolle Indexe anlegen kannst.
Man könnte dann wohl hinterher schauen welche Abfragen habe ich häufig und sich irgendwie erarbeiten welche Temp. Indicies er erstellt. Wobei ich auf Anhieb noch nicht mal weiß wie das für ODBC-Abfragen rauszubekommen ist.
Habe aber auch noch nicht gesucht

So, schönes Wochende, ich werde jetzt erstmal mit der Bahn in die Schweiz fahren. Wenn ich mich in 2 Wochen noch nicht melde, wißt ihr das ich noch am Bahnhof stehe........


Gruß
Gregor


Weshalb verwendet ihr nicht einfach eine 5250 emu mit automatisierter Benutzeranmeldung auf den PC´s und schreibt euch ein PGM das endsprechende Auswahlmöglichkeiten bietet.

Dann endfällt das problem unsinniger suchindexe, da auf einer referenzdatei beruhender zugriff auf die DB erfolgen kann.

Die Eigendliche such und formatierungs Funktion kann man dabei als Modul realisieren das im batch werkelt, die parameterübergabe kann ja via splf erfolgen die ihrerseits nach erfolgten ausdruck gelöst wird.

Die datenstrondatei der i5 bietet mit sicherheit noch zahlreiche andere möglichkeiten zur zielgerichteten Steuerung.

Gruß AS400.lehrling

Fuerchau
12-10-07, 13:37
Das ist bei SQL aber überhaupt nicht State-of-the-Art !

5250 läuft im Dialog mit Dialog-CPW und ODBC im Batch mit Batch-CPW.

Hinzu kommt, dass due für alles und jedes einen 5250-Dialog machen musst (gut geht auch einfach mit einem Format), aber der Datenaustausch gestaltet sich da als äusserst schwierig.

Warum für ODBC (SQL) etwas neues, fehleranfälliges und wenig performantes entwickeln ?