Optimierung von Datenbanken

SQL: Indexkompression und effiziente Speichertechnologie

Das Komprimieren von Datenbanken senkt nicht nur den Platzbedarf, sondern erhöht auch die Performance. Im zweiten und letzten Teil unserer Serie gehen wir auf die Indexkomprimierung und Spezialverfahren wie die Row Compression ein.
Alternativ zur in Teil 1 vorgestellten Tabellenkompression bietet sich die Index Key Compression an. Auf dieses Verfahren treffen die Einschränkungen wie etwa die Nutzung nur bei Read-Only-Tabellen nicht zu. Zunächst mag man annehmen, dass die Kompression der Indextabellen wenig Platzeinsparung bringen könnte. Doch belegen beispielsweise in SAP-Systemen die Indizes rund ein Drittel des Speicherplatzes, sodass hier ein erhebliches Einsparpotenzial besteht.


Die Index Key Compression steht für B Tree Indizes und vor allem für indexorganisierte Tabellen (IOT) zur Verfügung. IOTs sind dadurch charakterisiert, dass es dort keine Zweiteilung in einen Indexbereich und einen Datenbereich gibt. Die Daten liegen gemeinsam mit dem Index in einem Segment. Im Unterschied zur normalen Tabelle mit Index gibt es in den Leaf-Blöcken des Indexbaums keine Zeiger auf die Daten, sondern die Datensätze selbst sind dort gespeichert – sortiert nach den Kriterien des Primärschlüssels.


Vergleich: Links eine normale Tabelle mit Index, rechts eine indexorganisierte Tabelle.
spacer_1px
Vergleich: Links eine normale Tabelle mit Index, rechts eine indexorganisierte Tabelle.
spacer_1px


Eine IOT bietet sich immer dann an, wenn die Spalten des Primärschlüssels einen deutlichen Anteil am gesamten Datensatz ausmachen, beispielsweise in einfachen Adressentabellen. Dann ist in vielen Fällen schon alleine durch die Verwendung einer IOT eine Platzersparnis gegenüber der Verwendung einer normalen Tabelle mit Index zu erwarten.


In SQL wird das Anlegen einer IOT über die Option ORGANIZATION INDEX initiiert:


CREATE TABLE tab-name (......) ORGANIZATION INDEX;


Dabei ist der Primärschlüssel zwingend notwendig, weil er das Ordnungskriterium für die Datensätze ist.




dotted_line_content
 
Seite 1 von 9
dotted_line_content
Inhalt dieses Artikels
dotted_line_content
Links zum Artikel




Links zum Thema






Meinungen zu diesem Artikel (1 von 1)
Albert Lauchner
25.08.08 13:28

SQL: Indexkompression und effiziente Speichertechnologie
Mit der Datenbankkompression lässt sich erstaunlich viel Speicherplatz freischaufeln und meist
Ihre Meinung zum Artikel
Benutzername:
Passwort:



.
spacer