Szenario: Tabellen- und Indexbereichsfreigabe bei ExampleBANK - Effektivität der Speicherbereichsfreigabe für einen Index bewerten
Olivia bemerkt den Speicherplatz, der nach einem im Stapelbetrieb erfolgten Löschvorgang des Datenabschnitts in Tabelle T1 freigegeben wurde. Olivia weiß, dass in den Indizes für diese Tabelle noch Bereinigungsarbeiten erforderlich sind.
Die Indexbereichsfreigabe kann den durch Indizes belegten Speicherbereich wieder verfügbar machen, während die Indizes weiterhin von den Benutzern verwendet werden können.
Wie bei der Freigabe von Speicherbereich in Tabellen wird der betreffende Speicherbereich wieder für den Tabellenbereich freigegeben und steht so zur Wiederverwendung durch andere Objekte zur Verfügung.
Olivia verwendet die Funktion ADMIN_GET_INDEX_INFO, um zu ermitteln, wie viel Speicherbereich freigegeben werden kann:
SELECT SUBSTR(INDNAME,1,10) AS INDNAME, IID, INDEX_OBJECT_L_SIZE, INDEX_OBJECT_P_SIZE,
RECLAIMABLE_SPACE FROM TABLE(SYSPROC.ADMIN_GET_INDEX_INFO('','OLIVIA','T1'))
AS INDEXINFO WHERE INDNAME='INX1'
INDNAME IID INDEX_OBJECT_L_SIZE INDEX_OBJECT_P_SIZE RECLAIMABLE_SPACE
---------- ------ -------------------- -------------------- --------------------
INX1 3 1106752 1106752 846592
1 record(s) selected.
Olivia verwendet zum Abschließen der Bereinigung im Index den Befehl REORG mit den neuen Parametern, die für die Indexbereichsfreigabe hinzugefügt wurden.
REORG INDEXES ALL FOR TABLE T1 ALLOW WRITE ACCESS CLEANUP ALL RECLAIM EXTENTS
Olivia wiederholt den Befehl anschließend, um zu ermitteln, wie viel Speicherplatz an den Tabellenbereich freigegeben wurde:
SELECT SUBSTR(INDNAME,1,10) AS INDNAME, IID, INDEX_OBJECT_L_SIZE, INDEX_OBJECT_P_SIZE,
RECLAIMABLE_SPACE FROM TABLE(SYSPROC.ADMIN_GET_INDEX_INFO('','OLIVIA','T1'))
AS INDEXINFO WHERE INDNAME='INX1'
INDNAME IID INDEX_OBJECT_L_SIZE INDEX_OBJECT_P_SIZE RECLAIMABLE_SPACE
---------- ------ -------------------- -------------------- --------------------
INX1 3 259776 259776 0
1 record(s) selected.
Als Ergebnis wurden geschätzte 846.592 Kilobyte Speicherbereich freigegeben. Als nach dem Freigeben von Speicherbereich die physische Größe von der ursprünglichen physischen Größe abgezogen wird, bemerkt Olivia, dass der tatsächlich freigegebene Speicherbereich 846.976 Kilobyte beträgt.