Die zwei Gesichter einer Datenbank

11. November 2008 | Von | Kategorie: Big Data, Analytics, BI, MIS, Strategische Berichte

Ein Artikel der NEWSolutions: Frank Soltis übt einen seiner berüchtigten Rundumschläge im Bereich Datenbanken aus. 7 Seiten kompakte Information.

von Frank G. Soltis

Wenn wir heute über Datenbanken sprechen, meinen wir nicht nur einen Platz, an dem wir Daten aufheben, sondern echte Datenbank-Management-Systeme (DBMS). Sie speichern abrufbare Daten und deren Informationen, beinhalten Regeln für die Datenintegrität und Mechanismen, um diese zu unterstützen, sowie die Befehle für das Speichern und Abrufen der Daten. Ein DBMS hat eine Schnittstelle mit der ein Anwender arbeiten und die Daten manipulieren kann. Wir werden uns die beiden Schnittstellen zum AS/400 DBMS genauer ansehen: Daten-Definitionsspezifikationen (DDS) und Structured Query Language (SQL).

Bei der Einführung des System/38 gab es keine Standard-Interfaces für relationale Datenbanken. Die Entwickler mußten ein Interface exclusiv für dieses System schreiben. Es überrascht kaum, dass die DDS-Schnittstelle dem zu ersetzenden Dateisystem zunächst sehr ähnlich sah. Dazu kamen einige Systembefehle und Toolfunktionen, um mit der Datenbank zu arbeiten. Auch Befehle für das MI waren nötig: „Lesen“ „Schreiben“ „Aktualisieren“ und „Löschen“. Programmierer konnten diese Befehle direkt aus den Sprachen RPG und Cobol erreichen, z.B. benutzen sehr viele AS/400-Anwender DDS-RPG: DDS für Datendefinitionen und RPG-Befehle für den Datenzugriff. Das ursprüngliche DDS-Interface des System/38 wurde auf die AS/400 übertragen. System/38-Anwendungen benutzten weiter das ursprüngliche Interface. Tatsächlich bevorzugen viele Anwender nach wie vor diese Schnittstelle. Vor allem Mainframe-Kunden, die jetzt die AS/400 einsetzen, schätzen diese, weil sie den Schnittstellen von IBMs großem Datenbanksystem, dem Information Management System (IMS), sehr ähnlich ist.

Als die AS/400 entwickelt wurde, gab es Bemühungen bei IBM und in der gesamten Industrie, einen Standard zu entwickeln, den man Standard Query Language (SQL) nannte. SQL kam aus dem Projekt System/R, wurde aber nicht gleich adaptiert. Es dauerte noch zehn Jahre, bis SQL sich als Standard durchsetzte. Ingres benutzte jahrelang die Konkurrenzsprache QUEL, bis sie sich schließlich auch dem Trend anschlossen. 1988, bei der Einführung der AS/400, unterstützte sie DDS und SQL. SQL- Befehle können direkt in RPG-, Cobol- und C-Programme eingebaut werden. DB2/400 hat einen Vorcompiler, der diese SQL-Befehle direkt übersetzt.

DB2/400 besteht aus zwei Teilen. Datenbankmanager und DDS-Sprache sind im Betriebssystem enthalten. Der Query Manager und das SQL-Development Kit sind lizenzierte Produkte, die separat gekauft werden müssen. Der Query Manager ist das Abfragewerkzeug für die AS/400 und benutzt SQL. Das Development Kit enthält auch eine interaktive Anwenderschnittstelle für SQL und Language Precompiler, um SQL-Befehle in eine HLL einzubauen. Leider mußte IBM für die SQL-Produkte zusätzliches Geld verlangen, weshalb SQL nie so populär wurde wie DDS, das gratis mit dem Betriebssystem OS/400 mitgeliefert wurde. Dadurch wurde der Eindruck erweckt, als sei SQL ein Fremdprodukt, was natürlich nicht stimmt. Die meisten Datenbankentwickler in Rochester denken sogar eher in SQL als in DDS. Das letztere wird weiterhin unterstützt werden, neue Funktionen werden jedoch auf der SQL-Seite erwartet.

Obwohl wir von zwei unterschiedlichen Datenbankschnittstellen auf der AS/400 sprechen, handelt es sich eigentlich nur um eine einzige Datenbank, mit der über die DDS- oder die SQL-Schnittstelle kommuniziert werden kann. Beide Schnittstellen greifen auf dieselben MI-Befehle zu, wodurch man beide kombiniert benutzen kann. Diese Voraussetzungen machen die AS/400 Datenbank besonders leistungsfähig und flexibel.

Das einzige Problem bei der Verwendung von zwei Schnittstellen ist die Verwirrung, die wegen der unterschiedlichen Terminologie auftreten kann. Wie bei den OS/400 Objekten und den MI-Systemobjekten arbeiteten an der Namensgebung der beiden Schnittstellen unterschiedliche Personen. Zum Beispiel hat das ursprüngliche DDS-Interface physische Dateien, die die aktuellen Daten der Datenbank enthalten. Wie wir wissen, ist eine Datei eine zweidimensionale Tabelle. Sie wird in SQL Tabelle genannt, was eine wesentlich bessere Beschreibung für diese Datenstruktur ist. Eine logische Datei im ursprünglichen DDS-Interface enthält keine Daten, sondern zeigt auf sie; logische Dateien geben sozusagen einen Blick auf die Daten frei. Im SQL-Interface wird eine logische Datei Sicht (View) genannt. Um das Tabellenkonzept deutlich zu machen, werden die Datensätze und Felder aus dem DDS-Interface im SQL-Interface Zeilen und Spalten genannt.

Überblick über Datenbank-Operationen

Dieser Abschnitt gibt einen Überblick über die verschiedenen Datenbank- Komponenten, die wir auf der AS/400 finden. Dabei wollen wir nicht zeigen, wie man die AS/400 Datenbank benutzt. Zu diesem Thema gibt es viele gute Bücher und Aufsätze1. Wir wollen uns auf die Eigenschaften der Datenbank und die grundsätzlichen Operationen, die DBMS ausführt, konzentrieren. Dabei gehen wir in zwei Schritten vor: Im ersten Teil beschreibe ich die Funktionen eines DBMS und zeige, wie die AS/400 damit umgeht. Der zweite Teil bietet einen Überblick über andere Datenbankfunktionen, die sich zum Teil auf die Datenbank-Performance und zum Teil auf die AS/400 als Datenbankserver beziehen.

Funktionen eines Datenbank-Management-Systems

Im allgemeinen erwartet man von einem Datenbank-Management-System sieben Grundfunktionen:

  • Funktionen, um Datenbanktabellen zu definieren und zu beschreiben
  • Funktionen, um die Daten zu verwalten (Einfügen, Abrufen, Aktualisieren und Löschen)
  • Beschreibung der Daten, die von den Programmdefinitionen unabhängig sind
  • Spät eingebundene Sichten auf die Daten, um sich den ständig veränderten Anforderungen der Anwendungsprogramme anzupassen
  • Mehrfachbetrachtung von Daten für verschiedene Anwendungsprogramme
  • Datensicherheit
  • Datenintegrität

Datenbeschreibung und Dateierstellung

Mit DDS beschreibt man physische und logische Datenbankdateien. In DDS gibt es Befehle, die Schlüsselworte und Parameter für die Beschreibung der Dateien und der Felder in den Datenbanksätzen benutzen. Man kann damit auch die Gerätebeschreibungen der AS/400 definieren. Format und Datentyp sind immer gleich.

Schlagworte: , , , , , , , , , , , , , , , , , ,

Schreibe einen Kommentar

Sie müssen eingeloggt sein, um einen Kommentar schreiben.