Space-Frage bei Delete/Insert
- Dieses Thema hat 26 Antworten und 1 Teilnehmer, und wurde zuletzt aktualisiert vor 19 Jahren, 8 Monaten von
Anonym.
-
AuthorPosts
-
18. Oktober 2004 um 10:39 Uhr #3958
AnonymInaktivEine DECLARED global temporary table wird nicht in der DSNDB07 – Datenbank abgelegt ( sondern in einer explizit als WORK – Datenbank definierten DB ).
Auswirkungen auf andere Anwendungen sehe ich nicht.
Ich vermute aber auch mal, dass das Phänomen hier nicht auftritt.18. Oktober 2004 um 15:49 Uhr #3962
AnonymInaktivWenn die DECLARED TEMPORARY TABLE das Problem nicht lösen sollte (und eine katalogisierte Tabelle gebraucht wird), drängt sich mir die Frage auf, ob hier ein SIMPLE Tablespace nicht besser wäre. Die Vorteile des segmentierten fallen nicht ins Gewicht, und beim einfachen wird gleichen am Ende weitergeschrieben.
MfG
AxelP
PS: Ich suche in meinen Unterlagen noch nach der Beschreibung für die Space Allocation bei Inserts. Wenn ich fündig werde, melde ich mich nochmal
19. Oktober 2004 um 9:33 Uhr #3966
AnonymGastHi Alexander,
noch zwei Ideen/Möglichkeiten:
Ist es möglich den Delete auszusetzen um anschließend per Reorg ein Dictionary für diese Table aufzubauen?
Evtl. die Work-Tab in einen eigenen TS bringen. Eigentlich dürfte die Segmentierung keine Auswirkungen auf den Space-Bedarf beim Insert haben, aber im eigenen TS kann man vielleicht etwas einfacher mit simple/segmented probieren… Wichtig wäre hier natürlich auch das irgendwie ein Dictionary aufgebaut wird.
Ciao, Rolf
19. Oktober 2004 um 10:01 Uhr #3970
AnonymInaktivDie Beschreibung der Freispeichersuche gibt keinen Anhaltspunkt:
Suche nach Frei-Speicher im Segmented Tablespace:
– Die beste Page gemäß Clustering Index wird ermittelt. Die Spacemap Page wird geprüft, ob die Page verfügbar ist.
– Wenn nein, werden die Pages des Segmentes berücksichtigt.
– Wenn immer noch kein Platz, wird das letzte vorhandene Segment berücksichtigt.
– Wenn immer noch kein Platz, wird ein neues Segment angelegt.
– Ist die Ziel-Page gesperrt, sucht DB2 weiter.Vielleicht gibt es ja ein Problem mit der Spacemap-Verwaltung?
Doch statt zu rätseln, wäre es wahrscheinlich besser, bei IBM ein Problem aufzumachen.
Declared Temporary Tables liegen übrigens auch in segmentierten Tablespaces und schließen Parallelzugriffe zunächst einmal nicht aus. Daher würde es mich schon interessieren, ob sie das Problem lösen.
MfG
AxelP
19. Oktober 2004 um 10:19 Uhr #3974
AnonymInaktiv<zitat>Declared Temporary Tables liegen übrigens auch in segmentierten Tablespaces und schließen Parallelzugriffe zunächst einmal nicht aus. </zitat>
Declared Temp Tables sind nur innerhalb des Threads bekannt. Parallelzugriffe auf die Tabelle sind schon deshalb nicht möglich.
19. Oktober 2004 um 13:34 Uhr #3978
AnonymInaktiv@Ulrich Mayer
1) Declared Temporary Tables liegen in einer mit AS TEMP definierten Datenbank, für die TS anzulegen sind. Diese sind segmentiert. (z/OS nicht LUW!)
2) Laut SQL Reference Manual ist Parallelisierung bei Zugriffen auf die Tabelle grundsätzlich möglich:
"Parallelism support: Only I/O and CP parallelism are supported. Any query that involves a declared temporary table is limited to parallel tasks on a single CPC."
3) Ich habe nirgendwo etwas vom Multi-User-Zugriffen oder Multithreading geschriebenNoch Fragen?
MfG
AxelP
21. Oktober 2004 um 12:17 Uhr #3981
AnonymInaktivJa – gilt 2) eigentlich auch für DELETE und INSERT, oder nur für SELECTs ???
22. Oktober 2004 um 9:50 Uhr #3983
AnonymInaktiv@Ulrich Mayer:
Für diesen Fall gehe ich davon aus, daß es bei den Inserts (ich unterstelle Inserts mit einer Value-Angabe) keine Parallelverarbeitung gibt.
@Alexander:
Wie läuft es denn mit temporären Tabellen?
MfG
AxelP
12. November 2004 um 14:06 Uhr #3985
AnonymInaktivHallo allerseits,
ich war zwischenzeitlich im Urlaub, dann gab es andere Prioritäten, … und die Geschichte verlief sich ein wenig im Sande.
Ich habe die Tabelle inzwischen ohne Index in einem simple TS angelegt. Ich werde Euch berichten, wie sich der Space entwickeln wird.
Grüsse
Alexander16. November 2004 um 14:26 Uhr #3987
AnonymInaktivHallo,
wie versprochen:
der Tablespace hatte sich mit SegSize 4 noch bis auf 4200 TRX fett gemacht; als Simple TS reichen 300 TRX !Alexander
20. November 2004 um 9:18 Uhr #3989
AnonymInaktivHi Alexander,
vielen Dank für die Information! Das sieht doch nach einem Problem mit den Segmenten aus. Habt Ihr bei IBM schon das Problem gemeldet?
MfG
AxelP
22. November 2004 um 16:09 Uhr #3991
AnonymInaktivHi Axel(P),
wir haben kein Problem aufgemacht, da wir das Verhalten nicht nachgestellt bekommen haben. Es tritt (trat) nur bei diesem einen Programm auf.
Ob wir es noch machen ..?? Ich werde mögliche Ergebnisse auf jeden Fall kommunizieren.
Alexander
-
AuthorPosts
You must be logged in to reply to this topic.