Tablespace
# Tablespace

Ein Tablespace (deutsch Tabellenraum) bezeichnet im Datenbankbereich den Speicherort, in den Tabellen, Indizes und andere Datenobjekte geschrieben werden. Das Datenbankmanagementsystem (DBMS) kann auf zwei verschiedene Weisen auf Speicher zugreifen:

* SMS Tablespace – System Managed Storage: Der Speicher wird über Betriebssystemfunktionen beschrieben.
* DMS Tablespace – Database Managed Storage: Das DBMS erledigt die Speicherverwaltung selbst.

SMS sind einfach zu verwalten. Ihre Grenzen werden vom Betriebssystem gesetzt.

DMS hingegen können einzelne Dateien sein, die das DBMS dann intern aufteilt. Je nach System können aber auch Teile von Devices (Partitionen) oder ganze Devices (Raw Devices) vom DBMS verwaltet werden. Der Administrationsaufwand erhöht sich u. a. dadurch, dass der Bereich sich bei Bedarf nicht selbständig vergrößert. Damit einher geht aber oft eine höhere Verarbeitungsgeschwindigkeit, da sowohl das Rechtemanagement komplett in das DBMS verlagert wird, als auch die Auswahl der zu cachenden Daten. Das DBMS kann oft besser entscheiden, welche Daten wahrscheinlich mehrfach benötigt werden (komplexere Cache-Strategien durch Buffer Pools).

Man unterscheidet prinzipiell 4 Arten von Tablespaces:

* Regulär (Tabellen und Indizes)
* Temporär (Sortieren, Reorganisieren)
* LARGE (für große Objekte wie BLOB, CLOB, IMAGES etc.)
* Systemkataloge (enthält z. B. Tabellen, in denen die Datentypen definiert sind)
