Datenbanken und Informationssysteme: Datenbanken und

Werbung
Datenbank- und Informationssysteme
Einführung
Datenbanken
Datenbanken und
und Informationssysteme:
Informationssysteme:
Einführung
Einführung in
in Konzepte
Konzepte und
und Modelle
Modelle
Inhaltsübersicht :
Bild 1.0 -1
I
Einführung
II
Datenmodelle
III
Datenbankfunktionen
IV
Verteilte Datenbanksysteme
V
Datenbankanwendungen
VI
Dateiorganisation
VII
Datenbankprogrammierung
Datenbank- und Informationssysteme
DBS
IS
Sep-02 (c) Prof. Dr. F. Laux
It is evident that a course in database systems now plays a central role in the
undergraduate and graduate programs in computer science.
Jeffrey D. Ullman, Principles of database systems, 1988
Ziel der Vorlesung ist es, eine Einführung in Modelle und Konzepte von Datenbank- und Informationssystemen zu
geben.
Die Teilnehmer erlernen methodisches Vorgehen bei der Datenmodellierung und üben den Datenbankentwurf an
betrieblichen Aufgabenstellungen. Sie erwerben darüber hinaus solide Kenntnisse in allen grundlegenden
Aspekten und Funktionen der Datenbank- und Informationssysteme.
Die Veranstaltung wird von einem Praktikum begleitet, in welchem die behandelten Theorien und Konzepte in die
Praxis umgesetzt werden.
Inhalt
Nach einer kurzen Einführung und Motivation des Themas wird eine Rahmenarchitektur für Datenbanksysteme
vorgestellt. Der erste Schritt eines Datenbankentwurfs ist die Datenmodellierung, dazu werden in Kap. 2 mehrere
Modelle eingeführt und im Praktikum intensiv geübt. In Kap. 3 befassen wir uns mit der Datenbanksprache SQL
und den Konzepten der Datenbankfunktionalität, die im folgenden Kapitel um spezifische Aspekte verteilter
Datenbanken ergänzt werden. Danach werden die Einsatzgebiete von Datenbanken exemplarisch untersucht,
wobei auch neuere Entwicklungen wie Multimediadatenbanken Berücksichtigung finden.
Abgerundet wird die Veranstaltung durch die Betrachtung von gängigen Dateistrukturen und -systemen, die auch
als Beispiele für die physische Speicherorganisation bei Datenbanken dienen. Optional werden Konzepte und
Beispiele der Datenbankprogrammierung (Embedded SQL, ODBC und JDBC) vorgestellt.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-1
Datenbank- und Informationssysteme
Einführung
Literaturverzeichnis
Literaturverzeichnis
II) Datenmodellierung:
- E. Stickel: Datenbank Design, Gabler V. 1991
- M. Vetter: Objektmodellierung, Teubner V. 1995
I+III) Datenbanksysteme :
- Korth, Silberschatz : Database System Concepts, Mc Graw Hill 1991
- C. J. Date : An Intro. to Database Systems, Vols 1 & 2, Addison-W. 1995
- C.A. Zehnder: Informationssysteme und Datenbanken, Teubner V. 1985
IV) Verteilte
Datenbanken:
- Özsu, Valduriez: Distributed Database Systems, Prentice Hall 1991
- Ceri, Pelagatti: Distributed Database Systems, Addison-W. 1986
V) Anwendungen:
- A.-W. Scheer: Architektur integr. Informationssysteme, Springer 1991
- J. Nielson: Hypertext & Hypermedia, Academic Press 1990
VI) Dateiorg.:
VII) DB-Progr.:
Bild 1.0 -2
- G. Wiederhold: Datenbanken, Band 1: Dateisysteme, Oldenbourg V. 1980
- Hamilton, Cattell, Fisher: JDBC Database Access with Java, Addison-W.
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Es gibt eine Vielzahl von guten Büchern, welche Theorie und Anwendung von Datenbanken
behandeln. Die o.g. stellen demzufolge nur eine kleine Auswahl dar.
Als Textbuch kann "Database System Concepts" von Korth und Silberschatz empfohlen werden, da es
sich inhaltlich am besten mit der Vorlesung deckt.
Die anderen Literaturangaben sind als Ergänzungs- und Vertiefungslektüre gedacht; sie sind alle in
unserer Bibliothek ausleihbar.
Datenmodellierung
Die genannten Bücher führen in die Datenmodellierung ein, sie behandeln jedoch nicht die neuere
Entwicklung der objektorientierten Modellbildung (z.B. Unified Modeling Language,
Buchempfehlung hierzu: M. Fowler: UML Distilled, 1997, Addison Wesley, auch in dt. Übers.
erhältlich).
Datenbanksysteme
Die beiden Bände von Date sind sehr ausführlich und zählen zu den Klassikern. Das Buch von
Zehnder ist schon etwas betagt, aber leicht zu lesen und in ca. 15 Exemplaren in der FH-Bibliothek
vorhanden.
Verteilte Datenbanken
Die beiden Bücher über verteilte Datenbanken gehen weit über das hinaus, was in der Vorlesung
behandelt werden kann.
Anwendungen
Das Buch von Scheer über die "Architektur integrierter Informationssysteme" ist für
Wirtschaftsinformatiker und im Hinblick auf unseren SAP R/3 Schwerpunkt jedem zu empfehlen.
Dateiorganisation
Das Buch von Wiederhold vertieft die Themen von Kapitel 6.
DB-Programmierung
Die definitive Referenz über JDBC-Programmierung stammt von den Architekten der JDBCSchnittstelle selbst.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-2
Datenbank- und Informationssysteme
Einführung
Inhaltsverzeichnis:
Inhaltsverzeichnis: Kapitel
Kapitel 11
u 1.1
Motivation
1.1 Mo
tivation
1.1.1 DV mit und ohne Datenbank
1.1.2 Aufgaben eines DB-Systems
u 1.1.3 Datenbankdefinition
u
u
u 1.2
1.2 ANSI/SPA
RC
ANSI/SPARC Modell
1.2.1 Benutzersichten
u 1.2.2 Die 3-Ebenen-Architektur
u 1.2.3 Transformationen
u
Bild 1.1 -3
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Zunächst motivieren wir das Vorlesungsthema am Beispiel einer betrieblichen Datenverarbeitung
mit und ohne Datenbanksystem (DBS) aus ökonomischer Sicht. Daraus werden technische
Eigenschaften und Aufgaben eines DBS abgeleitet. Zum Schluß definieren wir den Begriff DBS
mit Hilfe seiner Elemente.
Eine wesentliche Eigenschaft stellt die Datenunabhängigkeit dar. Wir illustrieren dies an einigen
Beispielen, die uns zum ANSI/SPARC Modell führen. Dieses richtungsweisende Modell
beschreibt eine Architektur zur Realisierung der Datenunabhängigkeit.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-3
Datenbank- und Informationssysteme
Einführung
1.1.1
1.1.1 Unternehmen
Unternehmen ohne
ohne Datenbank
Datenbank
Produktion
Produktion
Erfaßt und verwendet
Artikelstamm
für Fertigungsvorschrift
Artikelstamm
Artikelstamm
Bild 1.1 -4
Einkauf
Einkauf
Verkauf
Verkauf
Erfaßt und verwendet
Artikelstamm
für benötigtes Material
Erfaßt und verwendet
Artikelstamm
für Angebote und
Rechnungen
Artikelstamm
Artikelstamm
Artikelstamm
Artikelstamm
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Um den Einsatz von Datenbanksystemen besser motivieren zu können, soll die Situation an einem
Unternehmen ohne Datenbank untersucht werden.
Betriebliche Informationen unterschiedlichster Art werden in Form von Daten gespeichert:
In unserer Folie erfaßt, verwaltet und benützt jeder Bereich einer Unternehmung seine eigenen
Artikeldaten. D.h. die Daten sind in mehreren Abteilungen vorhanden, ohne daß bereits erfaßte
Daten von anderen Abteilungen genutzt werden können.
Die Folgen der Mehrfacherfassung sind:
• in vielen Dateien sind die selben Informationen gespeichert (-> hohe Redundanz)
• eine Aktualisierung oder Änderung der Daten wird möglicherweise nicht in allen Kopien
gleichzeitig durchgeführt, d.h. die fachliche (logische) Übereinstimmung der Daten ist nicht
gewährleistet (-> Inkonsistenz der Daten)
• die Daten sind nur für eine Anforderung (z.B. Abfrage der Artikel) optimal gespeichert,
d.h. der Dateiaufbau ist den aktuellen Bedürfnissen angepaßt. Daraus folgt, daß eine
Änderung im Dateiaufbau (z.B. ein neues Feld einführen) auch eine Änderung im
Programm zur Folge hat (Datenabhängigkeit der Anwendung). Das System wird dadurch
inflexibel.
Wünschenswert wäre eine redundanzfreie und anwendungsunabhängige Speicherung der Daten.
Der Datenbestand sollte so strukturiert sein, daß er effizient und gleichzeitig von mehreren
Anwendern mit unterschiedlichen Anforderungen an die Daten genutzt werden kann.
In der nächsten Folie wird gezeigt, wie durch ein Datenbanksystem die o.g. Forderungen erfüllt
und die genannten Nachteile vermieden werden können.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-4
Datenbank- und Informationssysteme
Einführung
1.1.1
1.1.1 Unternehmen
Unternehmen mit
mit Datenbank
Datenbank
Produktion
Produktion
Erfaßt und verwendet
Artikelstamm
Einkauf
Einkauf
Erfaßt und verwendet
Artikelstamm
Verkauf
Verkauf
Erfaßt und verwendet
Artikelstamm
einheitl. Interface
(datenunabhängig)
Datenbankverwaltung
Datenbasis
Artikelstamm
Bild 1.1 -5
Datenbank- und Informationssysteme
einheitliche
Datenverwaltung
Speicherung und
Strukturierung
unabhängig von
den Anwendungen
Sep-02 (c) Prof. Dr. F. Laux
Anstatt die Daten mehrfach zu erfassen und an verschiedenen Orten zu speichern, wird nur einmal
in einer zentralen Datenbank (Datenbasis) erfaßt. Dies kann durch eine beliebige Abteilung oder
auch gemeinsam durchgeführt werden. Trotzdem können die Daten von allen
Anwendungsprogrammen gleichzeitig benützt werden.
Die gemeinsame und gleichzeitige Nutzung wird durch eine Datenbankverwaltung ermöglicht.
Dies ist ein Programm, das die Daten unabhängig von den Anwendungen verwaltet, einen
einheitlichen Zugang (Schnittstelle, Interface) zu den Daten bereitstellt und konkurrierende
Zugriffe regelt.
Der Zugriff erfolgt über eine genormte, anwendungsneutrale Schnittstelle obwohl die
Bereitstellung der Daten in einer anwendungsspezifischen Art (Sicht) erfolgt.
Durch die redundanzfreie Speicherung ist sichergestellt, daß alle Anwendungen die aktuellen
Daten erhalten.
Die Datenbankverwaltung realisiert gewissermaßen einen komplexen, abstrakten Datentyp: sie
schirmt die Daten und ihre Speicherstruktur vor dem direkten Zugriff ab.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-5
Datenbank- und Informationssysteme
1.1.2
1.1.2
u Einheitliche
Einführung
Warum
Warum Datenbanksysteme
Datenbanksysteme ??
Datenverwaltung
u
Datenintegrität
u Wiederverwendbarkeit
u Datenunabhängige
Programmschnittstelle
u
Unabhängigkeit der Anwendung von der Speicherung
u Entkopplung der Anwendung von techn. Funktionen
(Speicherverwaltung, Mehrbenutzerbetrieb, Zugriffsschutz)
ê Kostensenkung u. Qualitätssteigerung bei Progr.,
Verbesserung d. Flexibilität u. Aktualität d. Daten
Bild 1.1 -6
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Die positiven Eigenschaften eines Datenbanksystems bewirken vor allem eine
• Kostensenkung
• Qualitätsteigerung
• höhere Flexibilität und
• bessere Aktualität der Daten.
Dadurch resultiert insgesamt eine größere Wirtschaftlichkeit der DV im Unternehmen.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-6
Datenbank- und Informationssysteme
Einführung
1.1.2
1.1.2 Aufgaben
Aufgaben und
und Ziele
Ziele
eines
eines DB-Systems
DB-Systems
u
Datenunabhängigkeit
l
u
Datenstrukturierung
l
l
u
Mechanismen zur Konsistenzerhaltung bei Datenänderungen, Aktualität der Daten
Mehrbenutzerbetrieb
l
u
Datenkonsistenz, Datensicherung, Datenschutz
Transaktionsschutz
l
u
adäquates Datenmodell, geringe Redundanz,
Datendefinitionssprache (DDL: Data Definition Language), Datenkatalog (DD: Data Dictionary)
Datenintegrität
l
u
physische und logische Datenunabhängigkeit, Benutzersichten, einheitliche Benutzerschnittstelle
Synchronisation gleichzeitiger Zugriffe, z.B. durch Sperrmechanismen
Flexibilität/Effizienz
l
l
Reorganisation der Datenbank im Betrieb, ad hoc Abfragen (Query),
Leistungsfähige Implementierung
Bild 1.1 -7
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Die Zielsetzung eines DB-Systems läßt sich aus technischer Sicht wie folgt zusammenfassen:
1. höheres Abstraktionsniveau der Daten zu erzeugen (z.B. unabhängig von der Speicheroder Dateistrukturen)
2. Darstellung der Daten in adäquater (angemessener) und realitätsnaher Form (komplexe,
anwendungsspezifische Datentypen).
Eine höhere Abstraktion wird durch das Datenmodell erreicht, welches dem DBS zu Grunde liegt
und die möglichen Datenstrukturen festlegt. Man erreicht eine Unabhängigkeit von der
physischen Speicherung, indem die Daten für die Präsentation geeignet (realitätsnah)
transformiert werden. Die vom Datenmodell vorgegeben Strukturierungsmöglichkeiten
unterstützen die Datenkonsistenz indem z.B. Anzahl und Typ einer Beziehung zwischen den
Objekten (Bsp. Kunde und Adressen) festgelegt werden.
Konsistenzbedingungen (z.B. der Auftragswert muß größer 0 sein) und Transaktionsmechanismus (z.B. eine Transaktion wird vollständig oder überhaupt nicht ausgeführt) sichern
die korrekte Durchführung von Transaktionen (besteht aus einer Folge von Operationen auf einer
Datenbank, die als Einheit betrachtet werden).
Datensicherungsverfahren garantieren einen verlustfreien Betrieb des Datenbanksystems.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-7
Datenbank- und Informationssysteme
1.1.3
1.1.3
Einführung
Definitionen
Definitionen
Datenbanksystem
Datenbanksystem:=
:=Datenbankverwaltung
Datenbankverwaltung ++ Datenbasis
Datenbasis
(DBS)
(DBMS)
(DB)
(DBS)
(DBMS)
(DB)
Anwend.
Progr. 1
DBS
DBMS
DBMS
Anwend.
Progr. 2
u
DB
DBMS := Verwaltungsprogramm welches die Datenbasis organisiert,
schützt und mehreren Benutzern zugänglich macht
u
DB
:= Ein auf Dauer angelegter, strukturierter Datenbestand
(Daten, Beziehungen) + Datenbeschreibung (Datenkatalog)
Bild 1.1 -8
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Definitionen
Datenbasis:
Eine Menge strukturierter Daten, ihre Beziehungen zueinander und eine Datenbeschreibung
(Datenkatalog), die unabhängig von einer Anwendung gespeichert sind, heißt Datenbasis (DB).
Datenkatalog:
Eine Beschreibung der in einer Datenbasis speicherbaren Daten, ihrer Beziehungen und ihre
Verwendung (Programme) heißt Datenkatalog (engl. , Data Dictionary, DD).
Er stellt damit eine Metadatenbank dar, d.h. eine Informationsquelle über die Datenstrukturen und
-formate einer Datenbasis.
Datenbankverwaltung:
Ein Programm zur einheitlichen Speicherung, Verwaltung, Recherche und Schutz einer Datenbasis
heißt Datenbankverwaltung. (engl. Database Management System, DBMS)
Datenbanksystem:
Ein auf Dauer angelegter, strukturierter Datenbestand (Datenbasis, DB) und ein
Verwaltungsprogramm (Datenbankverwaltungssystem, DBMS (Database Management System),
welches diese Daten organisiert, schützt und mehreren Benutzern oder Anwendungsprogrammen
zugänglich macht, bilden ein Datenbanksystem (DBS).
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-8
Datenbank- und Informationssysteme
Einführung
1.2.1
1.2.1 Beispiel
Beispiel verschiedener
verschiedener Sichtweisen
Sichtweisen
ICE
München -HH
8:03; 9:03;...
Kundin A
Stuttgart - Reutlingen
Stuttgart - Ludwigsburg
Kundensichten
Kunde B
(Konzeptionelle
Sicht)
Struktursicht des
Datenbankadministrators (DBA)
Speichersicht
Bild 1.2 -9
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Menschen haben die Fähigkeit, sich je nach Interessenlage oder Aufgabe mit verschiedenen
Facetten (Sichten) einer Sache zu beschäftigen. Dies ist an folgendem Beispiel erkennbar:
Ein Mechaniker betrachtet ein Auto aus einem technischen Blickwinkel. Er interessiert sich
beispielsweise für die 'Innereien' eines Motors. Ein Fahrer richtet sein Augenmerk auf die
Bedienungselemente des Fahrzeugs, während der Halter des Pkws sich eher für die
wirtschaftlichen Aspekte interessiert.
In ähnlicher Weise lassen sich betriebliche Vorgänge, Funktionen und Dienste in verschiedener
Weise betrachten. Soll nun ein Datenbanksystem als Informationsbasis für einen Betrieb oder
einen Teil davon dienen, so muß es diesen unterschiedlichen Anforderungen (Sichten) gerecht
werden.
Wenn wir beispielsweise das Kursbuch der Deutschen Bahn AG in einer Datenbank abbilden
wollen, müssen ganz unterschiedliche Kundenwünsche gleichzeitig berücksichtigt werden.
Außerdem sollten auch zukünftige Anforderungen befriedigt werden können. Um dies zu
erreichen, ist eine abstraktere Sichtweise (konzeptionelle Sicht) erforderlich, als die der Benutzer.
Die optimale physische Organisation der Datenspeicher hingegen ist von der Häufigkeit der
Zugriffe abhängig, kann also sowohl von der konzeptionellen wie auch der Benutzersicht
abweichen.
Diese Überlegungen führen uns zu drei Sichtweisen: den Benutzersichten, der konzeptionellen
Sicht (Struktursicht des Datenbankadministrators) und der Speichersicht.
In der nächsten Folie vertiefen wir diese Erkenntnis aus Sicht der Informatik.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-9
Datenbank- und Informationssysteme
Einführung
1.2.1
1.2.1 Datensichten
Datensichten bei
bei der
der Auftragsbearbeitung
Auftragsbearbeitung
externe Sichten
konzeptionelle
Sicht
interne Sicht
Bild 1. 2 -10
TeilebedarfsTe
liste
il 1
Kundenliste
Te
Te il 2
.... il 3
Auftr.-Kopf
Auftr.-Kopf
Atr-Nr, Kde, Adr, Datum, Ges.-Preis
Atr-Nr, Kde, Adr, Datum, Ges.-Preis
1
Kd1 Adr1 1.1.96 5150,1
Kd1 Adr1 1.1.96 5150,2
Kd1 Adr1 1.6.96 5450,2
Kd1 Adr1 1.6.96 5450,3
Kd2 Adr2 7.9.96 1150,3
Kd2 Adr2 7.9.96 1150,...
....
....
........
........
...
....
....
........
........
Index Atr-Nr
1 o
Auftrag
Kde
Kde
Atr -N
Adr
Atr -N
r.
Adr
r.
Datu
Pos A
m
Datu
Pos A
rtikel
m
1 P rtikel MM
e
n
g
1 C
enege
... .. PC
2
... .....
2
...
......
Ges....
GesP
is -- ..
- re
Pre
is ----------
Ku
Ku nde 1
Ku nde 2
.... nde 3
.
Auftr.-Pos
Auftr.-Pos
1:n
Atr-Nr, Pos, Art., Menge, EPreis
Atr-Nr, Pos, Art., Menge, EPreis
1
1 PC
2
2350,1
1 PC
2
2350,1
2 CD
3
150,1
2 CD
3
150,2
1 HD
7
1150,2
1 HD
7
1150,3
1 Monitor 1
3600,3
1 Monitor 1
3600,...
.. ........
...
.......
...
.. ........
...
.......
Datei Auftrag
1 Kd Adr 1.1.96
1 PC 2 2350,2 CD 3 150,-
Datenbank- und Informationssysteme
Index Kde
Kd o
Sep-02 (c) Prof. Dr. F. Laux
Betrachten wir das Standardbeispiel 'Auftragsbearbeitung'.
Wir nehmen an, daß unsere Datenbasis für die Auftragsbearbeitung tabellarisch strukturiert ist.
Dies ist eine mögliche Abstraktion (konzeptionelle [auch konzeptuelle] Sicht) der in einem
Auftrag enthalten Information. Sie bedeutet, daß wir wenigstens zwei Tabellenstrukturen
benötigen, da Auftragskopf und Auftragspositionen verschieden strukturiert sind. Beide Tabellen
stehen durch den Zusammenhang zwischen Auftragskopf und seinen Auftragspositionen (i.a.
mehrere Positionen pro Auftragskopf) in Beziehung miteinander.
Neben den Auftragspapieren werden aus diesen Daten auch Kunden- und Teilebedarfslisten
erstellt. Diese sind offensichtlich anders strukturiert als unsere konzeptionelle Sicht, obwohl sie
sich aus unserer Datenbasis ableiten lassen.
Da der häufigste Zugriff in Form des Auftrags erfolgt, sollen diese Daten auch zusammen
gespeichert werden. Um einen effizienten Zugriff auf den Datenbestand nicht nur in zeitlicher
Reihenfolge der Erfassung zu ermöglichen, werden Indizes für die Kunden- und Auftragsnummer
mitgeführt.
An diesem Beispiel sehen wir, daß die Strukturen der 3 Sichten erheblich voneinander abweichen
können. Es kann offenbar nicht das Datenmodell geben, welches alle möglichen Anforderungen
optimal erfüllt. Umso wichtiger ist es deshalb, daß ein DBS verschiedene Sichten
(Abstraktionsebenen) realisiert, um die notwendige Flexibilität für unterschiedliche
Anforderungen zu erhalten.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-10
Datenbank- und Informationssysteme
Einführung
1.2.2
1.2.2 Die
Die 3-Ebenen-Architektur
3-Ebenen-Architektur von
von ANSI/SPARC
ANSI/SPARC
Appl. 1 (User1)
Appl. 2 (User1)
Appl. 3 (User2)
Benutzerinterface
Die Schemata
werden vom
DBA verwaltet
externes Schema 1 (User1)
externes Schema 2 (User2)
Transformation
extern - logisch
logisches Schema
Transform. logisch - intern
Datenverwaltung
(DBMS)
internes Schema
DBS
Bild 1. 2 -11
DBDB
(Dateien)
Data Dictionary
(Datenkatalog)
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Wenn wir das Beispiel 1.2-10 generalisieren, so erhalten wir eine 3-Ebenen-Architektur welche
schon 1975 im ANSI/SPARC Modell seinen Ausdruck gefunden hat.
Das Modell von ANSI/SPARC (American National Standards Institute / Standards Planning And
Requirements Committee) definiert 3 Funktionsschichten für ein DBS. Diese Schichten stellen
Abstraktionsebenen zwischen dem Speichermedium und dem Benutzer (oder
Anwendungsprogramm) dar.
Die externe Ebene präsentiert die Daten dem Benutzer in der gewünschten Form. Im Extremfall
besitzt jede Anwendung und jeder Benutzer eine individuelle Sicht auf die Daten. Diese Sichten
werden durch externe Schemata definiert.
Die konzeptionelle Gesamtsicht der Datenbank, d.h. die gesamte Datenstruktur gemäß einem
vorgegebenen Datenmodell, wird im logischen Schema durch den Datenbankadministrator
(DBA) festgelegt. Physische Speichereigenschaften oder individuelle Sichten
(Anwendungsstrukturen) werden nicht hier berücksichtigt.
Das interne Schema schließlich beschreibt die physischen Speicherstrukturen auf dem
Massenspeicher (Festplatte o.ä.).
Mit Hilfe von Transformationen werden die Sichten von einer Ebene in eine andere überführt.
Dies bedeutet, daß bei jedem Datenzugriff zwei Transformationen durchlaufen werden(vgl. Bild
1.2-12). Damit kann sowohl die physische Datenunabhängigkeit (Unabhängigkeit der externen
und logischen Datenstrukturen von der Speicherung) als auch die logische Datenunabhängigkeit
(Unabhängigkeit der externen Datenstrukturen von der logischen Struktur) realisiert werden. Dies
bedeutet, daß sich Schemaänderungen einer Ebene nicht auf eine andere auswirken.
Das Architekturmodell von ANSI/SPARC liefert gewissermaßen den Bauplan, um die
Datenunabhängigkeit zu realisieren.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-11
Datenbank- und Informationssysteme
Einführung
1.2.3
1.2.3 Transformationen
Transformationen beim
beim Schemaübergang
Schemaübergang
x´ := T2 -1( M-1(z))
x
externes Schema 1
Transformation
extern - logisch
T1
T2 -1
logisches Schema y := M-1(z)
y := T1(x)
M
externes Schema 2
M-1
Transform. logisch - intern
z := M(T1(x))
internes Schema
z
T1 ≠ T2 => nicht alle Inform.
sind in jeder Sicht verfügbar
Bild 1. 2 -12
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Am Beispiel eines Datenelements x wird gezeigt, welche Umwandlungen die Transformationen
bewirken, bis es als Wert z auf dem physischen Speicher der Datenbasis abgelegt werden kann.
Die Transformationen Ti sind für die Umsetzung zwischen externem und logischem Schema
zuständig; M formt zwischen logischem und internem Schema um. Wird dieses Element x von
einer anderen externen Datensicht (Schema 2) gelesen, erscheint es als x' dem Benutzer.
Die inverse Transformation von T wird als T-1 bezeichnet. Wenn T1 ungleich T2 ist, dann gibt es
für ein Datum x unterschiedliche externe Darstellungen.
Beispiel:
x := ‚gelb‘,
y := T1(x) = RGB-Farbcode (0,1,1)
z := M(y) = 24 Bit (00FFFF)
x‘ := T2-1(y) = ‚jaune‘
x‘‘ := T3-1(y) =
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-12
Datenbank- und Informationssysteme
Einführung
1.2.2
1.2.2 Festlegungen
Festlegungen in
in den
den Schemata
Schemata
u
u internes
internes
u
u logisches/konzept.
logisches/konzept.
Schema
Schema
u
u externe
externeSchemata
Schemata
Schema
Schema
u
u Datenobjekte
Datenobjekteund
und
u
u Speicher
Speicher
u
u Datenobjekte
Datenobjekte
u
u Dateien
Dateien
u
Datenu Daten-
u
u Beziehungen
Beziehungen
u
Ident.-schlüssel
u Ident.-schlüssel
repräsentation
repräsentation
u
Datenaustausch
u Datenaustausch
Bild 1. 2 -13
u
u Attribute
Attribute
u
Transaktionen
u Transaktionen
Datenbank- und Informationssysteme
Beziehungen
Beziehungenaus
aus
Benutzersicht
Benutzersicht
u
u Schlüssel
Schlüsselfür
für
Programme/User
Programme/User
u
u Formatierung,
Formatierung,
virtuelle
virtuelleAttribute
Attribute
u
u Zugriffsrechte
Zugriffsrechte
u
u Datendefinitionen
Datendefinitionen
-- DDL
DDL
Sep-02 (c) Prof. Dr. F. Laux
Die folgenden Festlegungen, die in den 3 Ebenen getroffen werden, sollen nach ANSI/SPARC
jeweils in einer eigenen Datendefinitionssprache (DDL) formuliert werden. Bei SQLDatenbanken (-> siehe Kap. 2.3 und 3.1) erfolgt die Datendefinition für alle Bereiche in SQL; bei
Netzwerkdatenbanken nach dem CODASYL-Standard (Conference On Data Systems Languages)
wird für jede Ebene eine eigene Sprache verwendet.
Das interne Schema definiert die physischen Aspekte und die Speicherung der Daten:
• Speicher:
Speichermedium, -bereich, -partition, -reservierung
• Dateien:
Dateiorganisation (index-sequentiell, gestreut (hash), relativ) -> siehe Kap. 6,
Blockgröße, Ladefaktor, Hashfunktion, Sekundärorganisation/Zugriffshilfen
(Indizes, invertierte Dateien, Multiliststrukturen)
• Datenrepräsentation:
Satzdefinition: Struktur, Datentypen
Felddefinition: Genauigkeit (Vor-, Nachkommastellen), Code, Kompression,
Chiffrierung
Datenaustausch: Transfergrößen zwischen Haupt- und Massenspeicher, Speicherverwaltung
(LRU=Least Recently Used, zyklisch, feste Reservierung)
Das logische Schema definiert die globale, fachlich abstrakte Datenstruktur:
• Datenobjekte: Typ der Entitäten/Objekte
•Beziehungen:
Beziehungen zwischen Entitäten/Objekten (1:n, n:m,
Aggregat/Komponenten, Generalisierung/Spezialisierung, etc.)
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-13
Datenbank- und Informationssysteme
Einführung
• Schlüssel:
Damit jedes Objekt oder jede Entität eindeutig identifizierbar ist, wird
eine Objekt-ID oder eine eindeutige Attributkombination festgelegt.
Gegebenenfalls muß ein künstlicher Schlüssel/Attribut (Surrogat) eingeführt
werden.
• Attribute:
Festlegung der Objekteigenschaften durch Attribute (Datentypen), ihr
möglicher Wertebereich (Domain), Genauigkeit und Anzahl.
• Modellanpassungen: Anpassungen der Objekte und Entitäten an das verwendete
Datenmodell, Reduktion von Redundanzen (Normalisierung).
• Transaktionen: Die im Kontext der Anwendung zulässigen Datenmanipulationen
(Operationen, welche die Datenbank konsistent erhalten) werden als
unteilbare Vorgänge (Transaktionen) definiert.
Die externen Schemata definieren die Benutzersichten. Jedes Schema legt fest:
• Objekte und Beziehungen aus Benutzersicht:
Objekt- und Beziehungstypen aus Benutzersicht, die aus dem logischen
Schema ableitbar sind.
• Schlüssel für Benutzer und Anwendungen:
Zugriffsschlüssel (Suchschlüssel, alternative Zugriffsarten) der Benutzer.
• Attribute:
Vom Anwender definierte Attribute; sie können auch virtuell (z.B.
berechnet oder abgeleitet) sein.
• Formatierung: Externe Darstellung der Attributwerte (Daten); z.B. Umsetzung
sprachneutraler Attribute in anwendungsspezifische Präsentationen (1 = rot,
2 = gelb, 3 = grün)
• Zugriffsrechte: Lese-, Schreib- und Änderungsrechte für Objekte, Attribute etc.
• Datendefinitionen: Generierung von Datendefinitionen für verschiedene Hostsprachen.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-14
Datenbank- und Informationssysteme
Einführung
Literatur
Literatur zu
zu Kapitel
Kapitel 11
u
ANSI/X3/SPARC
"Interim Report from the Study Group DBMS"
FDT (Bulletin of the ACM SIGMOD*) Vol. 7, No 2 (1975)
u
C. J. Date
"An Introduction to Database Systems", Vol. 1, 6th Edition
Addison-Wesley (1995)
u
Nahezu jedes Lehrbuch über Datenbanksysteme behandelt das
ANSI/SPARC-Modell
*)Association for Computing Machinery, Special Interest Group on Management Of Data
Bild 1. 2 -15
Datenbank- und Informationssysteme
Sep-02 (c) Prof. Dr. F. Laux
Der Zwischenbericht des ANSI/SPARC spiegelt den damaligen Erkenntnisstand wider. Die
Arbeitsgruppe (Task Force), welche die Studie durchführte, zeigt ihre Herkunft aus der Zeit der
COBOL-Standardisierung (Conference on Data System Languages, CODASYL) dadurch, daß sie
auch detaillierte Vorschläge für die Datendefinitionssprachen macht.
Die Monographie von C. J. Date erklärt sehr anschaulich und mit viel Detailwissen alle wichtigen
Aspekte von Datenbanken. Es ist vermutlich das erfolgreichste Lehrbuch über Datenbanken.
© Sep-2002, F. Laux, Wirtschaftsinformatik, FH Reutlingen
1-15
Herunterladen