DB2 Universal Database - Systemverwaltung


Übersicht über Datenbankobjekte

Dieser Abschnitt enthält eine Übersicht über die folgenden wichtigen Datenbankobjekte:

Abbildung 1 verdeutlicht die Beziehungen zwischen einigen dieser Objekte. Sie zeigt außerdem, daß Tabellen, Indizes und lange Daten (LOBs) in Tabellenbereichen gespeichert werden.

Abbildung 1. Beziehungen zwischen einigen Datenbankobjekten

Beziehungen zwischen einigen Datenbankobjekten

Exemplare

Ein Exemplar (zuweilen auch als Datenbankmanager bezeichnet) ist der DB2-Code, der die Daten verwaltet. Er steuert, welche Operationen an den Daten ausgeführt werden können, und verwaltet die Systemressourcen, die ihm zugeordnet sind. Jedes Exemplar stellt eine vollständige Umgebung dar. Es enthält sämtliche Datenbankpartitionen, die für ein bestimmtes paralleles Datenbanksystem definiert sind (siehe Kapitel 4, Parallele Datenbanksysteme). Ein Exemplar verfügt über eigene Datenbanken (auf die andere Exemplare keinen Zugriff haben), und alle zugehörigen Datenbankpartitionen benutzen gemeinsame Systemverzeichnisse. Es verfügt außerdem über ein von anderen Exemplaren auf derselben Maschine (System) getrenntes Sicherheitssystem.

Datenbanken

Eine relationale Datenbank stellt Daten als Sammlung von Tabellen dar. Eine Tabelle besteht auf einer definierten Anzahl von Spalten und einer beliebigen Anzahl von Zeilen. Jede Datenbank enthält einen Satz von Katalogtabellen, die die logische und physische Struktur der Daten beschreiben, eine Konfigurationsdatei, die die der Datenbank zugeordneten Parameterwerte enthält, und ein Wiederherstellungsprotokoll, das laufende Transaktionen und archivierbare Transaktionen enthält.

Knotengruppen

Eine Knotengruppe ist eine Gruppe aus einer oder mehreren Datenbankpartitionen. Wenn Sie Tabellen für die Datenbank erstellen wollen, erstellen Sie zunächst die Knotengruppe, in der die Tabellenbereiche gespeichert werden. Anschließend erstellen Sie die Tabellenbereiche, in denen die Tabellen gespeichert werden. Im Abschnitt Knotengruppen und Datenpartitionierung finden Sie weitere Informationen zu Knotengruppen. Eine Definition des Begriffs Datenbankpartition finden Sie in Kapitel 4, Parallele Datenbanksysteme. Im Abschnitt Tabellenbereiche finden Sie weitere Informationen zu Tabellenbereichen.

Tabellen

Eine relationale Datenbank stellt Daten als Sammlung von Tabellen dar. Eine Tabelle besteht aus Daten, die logisch in Spalten und Zeilen angeordnet sind. Alle Datenbank- und Tabellendaten werden Tabellenbereichen zugeordnet. Im Abschnitt Tabellenbereiche finden Sie weitere Informationen zu Tabellenbereichen. Die Daten in der Tabelle besitzen eine logische Beziehung, und zwischen Tabellen können Abhängigkeitsbedingungen definiert werden. Daten können nach mathematischen Prinzipien und mit Hilfe als Relationen bezeichneter Operationen in Sichten zusammengefaßt und bearbeitet werden.

Der Zugriff auf Tabellendaten erfolgt mit Hilfe der Structured Query Language (SQL, siehe Handbuch SQL Reference), einer standardisierten Sprache zur Definition und Bearbeitung von Daten in einer relationalen Datenbank. Eine Abfrage wird in Anwendungen oder von Benutzern verwendet, um Daten aus einer Datenbank abzurufen. In der Abfrage wird unter Verwendung von SQL eine Anweisung in folgendem Format erstellt:

   SELECT <datenname> FROM <tabellenname>

Sichten

Eine Sicht bietet eine effektive Methode zur Darstellung von Daten, ohne sie pflegen zu müssen. Eine Sicht ist keine wirkliche Tabelle und erfordert keine permanente Speicherung. Es wird eine "virtuelle Tabelle" erstellt und verwendet.

Eine Sicht kann alle oder einige der Spalten oder Zeilen der Tabelle enthalten, auf der sie basiert. Zum Beispiel können Sie eine Tabelle mit Abteilungsdaten (DEPARTMENT) und eine Tabelle mit Mitarbeiterdaten (EMPLOYEE) in einer Sicht verknüpfen, sodaß Sie alle Mitarbeiter in einer bestimmten Abteilung auflisten können.

Abbildung 2 zeigt die Beziehung zwischen Tabellen und Sichten.

Abbildung 2. Beziehung zwischen Tabellen und Sichten

Beziehung zwischen Tabellen und Sichten

Indizes

Ein Index ist ist eine Menge von Schlüsseln, die jeweils auf Zeilen in einer Tabelle zeigen. Zum Beispiel hat Tabelle A in Abbildung 3 einen Index, der auf den Personalnummern in der Tabelle basiert. Dieser Schlüsselwert dient als Zeiger auf die Zeile in der Tabelle: die Personalnummer 19 zeigt auf Mitarbeiter KMP. Ein Index ermöglicht einen effizienteren Zugriff auf Zeilen einer Tabelle, indem er einen direkten Pfad zu den Daten mit Hilfe von Zeigern erstellt.

Das SQL-Optimierungsprogramm wählt automatisch den effizientesten Weg für den Zugriff auf Daten in Tabellen aus. Das Optimierungsprogramm bezieht Indizes bei der Ermittlung des schnellsten Pfads zu den Daten mit in Betracht.

Es können eindeutige Indizes erstellt werden, um die Eindeutigkeit des Indexschlüssels sicherzustellen. Ein Indexschlüssel ist eine Spalte oder eine geordnete Gruppe von Spalten, auf denen ein Index definiert wird. Mit Hilfe eines eindeutigen Index wird gewährleistet, daß der Wert jedes Indexschlüssels in der indizierten Spalte bzw. den indizierten Spalten eindeutig ist. Im Abschnitt Geschäftsregeln für Daten werden Schlüssel und Indizes eingehender behandelt.

Abbildung 3 illustriert die Beziehung zwischen einem Index und einer Tabelle.

Abbildung 3. Beziehung zwischen einem Index und einer Tabelle

Beziehung zwischen einem Index und einer Tabelle

Schemata

Ein Schema ist eine Kennung, wie zum Beispiel eine Benutzer-ID, die bei der Gruppierung von Tabellen und anderen Datenbankobjekten hilfreich ist. Ein Schema kann einem Eigner zugeordnet sein, der den Zugriff auf die in ihm enthaltenen Daten und Objekte steuern kann.

Ein Schema ist außerdem ein Objekt in der Datenbank. Es kann automatisch erstellt werden, wenn das erste Objekt in einem Schema ersteltl wird. Ein solches Objekt kann ein beliebiges Objekt sein, das durch einen Schemennamen qualifiziert werden kann, wie zum Beispiel eine Tabelle, ein Index, eine Sicht, ein Paket, ein einzigartiger Datentyp, eine Funktion oder ein Auslöser. Sie müssen über die Berechtigung IMPLICIT_SCHEMA verfügen, wenn das Schema automatisch erstellt werden soll. Sie können das Schema außerdem auch explizit erstellen.

Ein Schemenname wird als erster Teil eines zweiteiligen Objektnamens verwendet. Bei der Erstellung eines Objekts können Sie es einem bestimmten Schema zuordnen. Wenn Sie kein Schema angeben, wird das Objekt dem Standardschema zugeordnet, das in der Regel die Benutzer-ID der Person ist, die das Objekt erstellt hat. Der zweite Teil des Namens ist der Name des Objekts. Zum Beispiel könnte ein Benutzer namens Smith eine Tabelle des Namens SMITH.PAYROLL besitzen.

Systemkatalogtabellen

Jede Datenbank enthält einen Satz von Systemkatalogtabellen, die die logische und physische Struktur der Daten beschreiben. DB2 erstellt und pflegt einen umfangreichen Satz von Systemkatalogtabellen für jede einzelne Datenbank. Diese Tabellen enthalten Informationen über die Definitionen der Definitionen von Datenbankobjekten, wie zum Beispiel Benutzertabellen, Sichten und Indizes sowie Sicherheitsinformationen über die Berechtigungen, die Benutzer für diese Objekte besitzen. Sie werden bei der Erstellung der Datenbank erstellt und im Rahmen des normalen Datenbankbetriebs aktualisiert. Sie können nicht explizit erstellt oder gelöscht werden, jedoch kann ihr Inhalt mit Hilfe von Katalogsichten abgefragt und angezeigt werden.


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]