Z-OS//DB2 7.1 – Probleme mit temp-Databases
- Dieses Thema hat 2 Antworten und 1 Teilnehmer, und wurde zuletzt aktualisiert vor 18 Jahre, 1 Monat von
Anonym.
-
AuthorPosts
-
26. August 2005 um 6:56 Uhr #2588
AnonymInaktivHallo zusammen
Vielleicht hat jemand einen Tipp für mein Problem.
Wir haben die Temp-Database mit insgesamt 2 Tablespaces angelegt. Diese Workfiles werden verwendet, wenn man rückwärts lesen will oder temp.-Tabllen im Programm anlegt. Nun wachsen diese 2 tablespaces ins Unendliche. Ich leg die mit je 500 Cyls an
und einige tabe später sind die beiden um das doppelte gewachsen. Die beiden TS waren auch schon mal zusammen auf etwa 3000 cyls angelangtWir haben nur eine Anwendung die diese temp-Objekte verwendet und der Programmierer schwört, daß regelmäßig commits gemacht werden.
warum zum Teufel wird der Speicherplatz nicht mehr freigegeben sonder offensichtlich immer neuer allociert?
Die IBM kann mir da auch nicht weiterfehlen – man solle diese Objekte regelmäßig droppen und neu anlegen.
aber das kann ich doch nicht jeden tag machen.Gruß
Zefrim
26. August 2005 um 11:08 Uhr #3024
AnonymInaktivHallo Zefrim,
selbst in einem kleineren DB2 Shop können die Work Files (DSNDB07) schnell auf mehrere Tausend Cyls anwachsen.
Der Einsatz von COMMIT’s ändert nichts an der Tatsache, dass Sort Work’s mindestens in der Größe des größten Result Sets benötigt werden. Gibt es Konkurrenz im System, vervielfacht sich der Bedarf dann nochmal.
Einmal benötigter Platz wird natürlich nicht mehr freigegeben, sondern bleibt bestehen.
Willst Du den Übeltäter aktiv erwischen, könntest Du die Work Files in eine eigene begrenzte SMS Storage Group legen. Ist der Platz erschöpft, bekommt der Verusacher eins auf die Finger geklopft.
Verursacher können ja ganz unterschiedlicher Natur sein: ORDER BY, GROUP BY, UNION (ohne ALL), IN Clauses, Merge Scan Joins etc etc.
Auf weitere Teilnehmer an der Diskussion freue ich mich!
Gruß
Gernot
26. August 2005 um 12:54 Uhr #3334
AnonymInaktivNe NE – das waren nicht die Sortworks sondern
die temp-database. Zur Erinnerung diese werden mit folgenden stmt angelegt:
CREATE DATABASE DSNTEMP AS TEMP
STOGROUP SYSDEFLT
BUFFERPOOL BP7
INDEXBP BP7
und dann
CREATE TABLESPACE STEMP00 IN DSNTEMP
USING STOGROUP SYSDEFLT
PRIQTY 14400
SECQTY 7200
SEGSIZE 64
CLOSE NOZefrim
-
AuthorPosts
You must be logged in to reply to this topic.