Samstag, Februar 26, 2011

Deferred Segment Creation

Deferred Segment Creation ist ein neues Feature in Version 11.2 und dient dazu, die einem Objekt zugeordneten Segmente erst dann zu erzeugen, wenn sie tatsächlich benötigt werden - also dann, wenn Daten eingefügt werden. Die Dokumentation erklärt dazu:
SEGMENT CREATION DEFERRED: This clause defers creation of the table segment — as well as segments for any LOB columns of the table, any indexes created implicitly as part of table creation, and any indexes subsequently explicitly created on the table — until the first row of data is inserted into the table. At that time, the segments for the table, LOB columns and indexes, and explicitly created indexes are all materialized and inherit any storage properties specified in this CREATE TABLE statement or, in the case of explicitly created indexes, the CREATE INDEX statement. These segments are created regardless whether the initial insert operation is uncommitted or rolled back. This is the default value.
In den letzten Wochen haben sich Tom Kyte und Richard Foote mit dem Feature etwas intensiver beschäftigt:
Bei Richard Foote findet man außerdem auch ein plausible Erklärung für die Einführung der Deferred Segment Creation:
This means for those packaged applications where a large number of objects get created of which relatively few are actually ever used by the specific deployment of the application (eg. SAP) , a substantial amount of storage could potentially be saved. It also can save a significant amount of time deploying such applications as the overheads associated with actually creating the never to be used segments can be avoided.
Komisch, dass so häufig der Name SAP erscheint, wenn es um eine seltsame Nutzung von Datenbanken geht ...

Nicht direkt mit dem Thema verknüpft, aber auch interessant ist Richard Footes Beobachtung, dass in 11.2 ein weiteres Feature zur Vermeidung nutzloser Speicherverwendung eingeführt wurde, nämlich die Löschung der unbrauchbaren Segmente eines als UNUSABLE gekennzeichneten Index.

Keine Kommentare:

Kommentar veröffentlichen