Oracle 11g2 new feature: voorkomen van fragmentatie met deferred segment creation

In de Oracle database 11g release 2 is het mogelijk om bij het aanmaken van een standaard, niet gepartitioneerde tabel aan te geven dat deze tabel pas fysieke ruimte zal alloceren als er daadwerkelijk rijen aan worden toegevoegd. Dit wordt deferred segment creation genoemd.


Waarom is dit handig?

  1. Tot en met 11g wordt er standaard een initial extent aangemaakt en is het dus maar de vraag of het volgende extent er direct achter kan liggen. De kans is dus heel erg groot dat er standaard al fragmentatie optreedt en dat is ongunstig voor de performance.
  2. Het aanmaken van een applicatie gaat sneller.
  3. Als er in een applicatie heel veel tabellen zitten, waar er maar enkele van gebruikt worden, wordt er voor deze tabellen niet onnodig ruimte gealloceerd.

Als er tijdens het aanmaken van een tabel direct impliciet een (primary key of unique) index wordt gemaakt, wordt ook aan de index geen fysieke ruimte toegewezen. In de kolom SEGMENT_CREATED in de views USER_TABLES en USER_INDEXES wordt aangegeven of er al dan niet een segment is aangemaakt.

Instellen van Deferred segment creation

Om dit alles te bewerkstelligen kent Oracle een nieuwe initialisatieparameter DEFERRED_SEGMENT_CREATION die standaard op TRUE staat.

Het is ook mogelijk om bij het aanmaken van een tabel aan te geven dat er wel direct fysieke ruimte toegewezen moet worden. Hiervoor is het CREATE TABLE statement uit te breiden met de optie segment creation immediate:

SQL> create table tabelnaam (kolom number) segment creation immediate;

Als de initialisatieparameter DEFERRED_SEGMENT_CREATION op FALSE staat kan door de optie segment creation deferred aangegeven worden dat er geen fysieke ruimte gealloceerd mag worden bij het aanmaken van de tabel:

SQL> create table tabelnaam (kolom number) segment creation deferred;

Dit, en vele andere nieuwe mogelijkheden, tips en trucks komen terug in de opleidingen Oracle-DBA en Oracle DBA, nieuwe features (Oracle 10g-11g).

Onderwerpen
Actieve filters: Wis alle filters
Pageloader
PRIVACY VOORWAARDEN

Jouw persoonsgegevens worden opgenomen in onze beschermde database en worden niet aan derden verstrekt. Je stemt hiermee in dat wij jou van onze aanbiedingen op de hoogte houden. In al onze correspondentie zit een afmeldmogelijkheid