Einführung in Datenbanken

Werbung
Einführung in Datenbanken
„
„
„
„
„
„
Dipl.-Inf. Michael Wilhelm
Hochschule Harz
FB Automatisierung und Informatik
[email protected]
Raum 2.202
Tel. 03943 / 659 338
FB Automatisierung und Informatik: Einf. In Datenbanken
1
Lernziele
„
Begriffe aus der Datenbanktechnoligie
–
–
–
–
„
Datenmodelle
–
–
–
–
„
Hierarchisches Modell
Netzwerk Modell
Rationales Modell
Objektorientiertes Modell
Entwurf einer Datenbank
–
–
„
Dateiverwaltung -> Datenbank
Datenbank DB
Datenbanksystem DBS
Datenbankmanagementsystem DBMS
Entities
Normaliserung
SQL
FB Automatisierung und Informatik: Einf. In Datenbanken
2
Inhalt
1. Grundlegende Begriffe der Datenbanktechnologie
2. Datenbankentwurf / Datenmodelle
3. ER-Modell / ER-Diagramm
3. Normalisierung
4. SQL-Sprache
FB Automatisierung und Informatik: Einf. In Datenbanken
3
Organisatorisches: Grundlagen der Informatik III
„
Studiengang Informatik Bachelor
„
Vorlesung:
Donnerstag 14:00 -16:30
Raum 5.105
„
Labor:
Montag 08:00 - 11:15
Raum 9.301
FB Automatisierung und Informatik: Einf. In Datenbanken
4
Labore
Versuch
Datum
SS 2006
1
Einfache SQL-Abfrage
2
Abfragen mit Where Bedingungen
3
Joins-Abfragen, Subselect
4
Create, Insert into etc.
FB Automatisierung und Informatik: Einf. In Datenbanken
5
Literatur
„
„
„
„
„
„
„
„
„
Codd, E. F.: A Relational Model of Data for Large Shared Data Banks,
Communica-tions of the ACM, Vol 13, No. 6, p. 377-387, 1970
Chen, P. P.: The Entity-Relationship Model-Toward a Unified View of
Data, ACM Tran-sactions on Database Systems, Vol. 1, p. 9-36, 1976
Date, C. J.: An Introduction to Database System, Vol. 1, Reading
Massachusetts, 1985
Jackson, G. A.: Entwurf relationaler Datenbanken, Hanser Verlag
München, Wien, 1989
Vossen, G., Witt, K.-U.: Entwicklungstendenzen bei Datenbanksystemen,
Oldenbourg Verlag München, Wien, 1991
Wedekind, H.: Datenbanksysteme I, Bibliographisches Institut Mannheim,
1981
Schicker, E.: Datenbanken und SQL, B. G. Teubner Stuttgart, 1996
Sauer, H.: Relationale Datenbanken, Addison-Wesley, 1995
Meier, A., Wüst, Th.: Objektorientierte Datenbanken, dpunkt Verlag, 1997
FB Automatisierung und Informatik: Einf. In Datenbanken
6
Literatur
„
„
„
„
„
„
„
„
Abbey, Corey, Abramson: Oracle 8i für Einsteiger, Hanser Verlag 1999
Ponndorf, St., Matthäus, W.-G.: Oracle 8i und Java, Addison-Wesley, 1999
Kähler, W.-M.: Relationales und objektrelationales SQL, Vieweg & Sohn
Verlagsgesellschaft mbH, 1999
McCullough-Dieter, C.: Oracle8i für Dummies, MITP-Verlag GmbH
Bonn, 1999
Kofler, M.: MySQL, Addison-Wesley, 2001
Riccardi, G.: Datenbanksysteme mit Internet und Java-Applikationen,
Addison-Wesley, 2001
Hohenstein, U., Pleßer, V.: Oracle 9i, Effiziente Anwendungsentwicklung
mit objektrelationalen Konzepten, dpunkt.verlag, 2002
Kuhlmann, G., Müllmerstadt, F.: SQL, Der Schlüssel zu relationalen
Datenbanken, Rowohlt Taschenbuch Verlag, 2001
FB Automatisierung und Informatik: Einf. In Datenbanken
7
Kapitel 1
Warum Datenbanken ?
FB Automatisierung und Informatik: Einf. In Datenbanken
8
„
Datenbank eines Industriebetriebes
–
–
„
–
Kundeninformationen
Kontobewegungen
Datenbank eines Energieversorgers
–
–
„
Mitarbeiterverwaltung
Maschinen, Produkte
Datenbank einer Bank
–
„
Beispiele (1)
Abrechnungen (Strom)
Leitungskataster
Datenbank einer Kommunalverwaltung
–
–
–
Einwohnerdaten und –statistiken
An- und Abmeldungen
Umweltdaten: Erfassung und Verwaltung
FB Automatisierung und Informatik: Einf. In Datenbanken
9
„
Datenbank einer Bibliothek
–
–
„
–
Informationen über chemische Stoffe und ihre Verbindungen
Veröffentlichungen
Datenbank eines Handwerksbetriebes
–
–
„
Vorhandene Bücher
Ausleihe
Datenbank eines Forschungsinstitutes
–
„
Beispiele (2)
Rechnungswesen
Materialzulieferung und -verbrauch
Datenbank eines Flugunternehmens
–
–
Kundenbetreuung
Abflug- und Zielorte; Zeiten; Buchungslage
FB Automatisierung und Informatik: Einf. In Datenbanken
10
Einstiegsfragen
„
Wozu kann man Datenbanken gebrauchen?
„
Welche Konzepte liegen Datenbanken zugrunde?
„
Wie sind Datenbanken aufgebaut?
„
Wie erstellt man Datenbanken?
„
Wie arbeitet man mit Datenbanken?
„
Was haben Datenbanken mit Geoinformatik zu tun?
„
Welche Datenbank-Produkte gibt es?
FB Automatisierung und Informatik: Einf. In Datenbanken
11
Beispiel:
° Die
„Bundesländer-Datenbank“
„
Idee
„
Anforderungen
„
Konzept
„
Datenmodell
„
Umsetzung
FB Automatisierung und Informatik: Einf. In Datenbanken
12
Idee für eine Datenbank

Gedanken sammeln, ordnen
„
„
„Bürgerinformationssystem“
Informationen zu allen Bundesländern:
-
Größe
Bevölkerungszahl
Hauptstädte
EW/km2
Privathaushalte
Eheschließungen, Geborene, Gestorbene, etc.
...
FB Automatisierung und Informatik: Einf. In Datenbanken
13
Anforderungsanalyse
ž
Nutzer fragen, Ziele bestimmen
„
Anforderungsanalyse („requirements engineering“)
‹ Wer
soll die Datenbank nutzen?
‹ Welchen Inhalt soll sie haben?
‹ Welche Abfragen sollen möglich sein?
‹ Wie soll die Datenbank aktuell gehalten werden?
‹ Wie sollen die Informationen abrufbar sein
–
–
–
„
„
„
WWW
- gestütztes System?
PC an einem Standort (z. B. Rathaus?)
Client- Server- Architektur?
Konzept
Datenmodell
Umsetzung
FB Automatisierung und Informatik: Einf. In Datenbanken
14
Konzept entwickeln
Ÿ
Vorüberlegungen
„
„Basisdaten“: statistische Jahrbücher
-
„
S t r u k t u r i e r u n g der Information
-
„
„
16 Bundesländer
Größe, Bevölkerungszahl, statistische Kennwerte,
geographische Angaben
Nur textlich? Oder auch (karto-)graphisch?
Ziele schriftlich fixieren!
Basisdaten zusammenstellen
Anforderungen detailliert beschreiben
Konzept textlich erläutern
Datenmodell entwerfen
Datenmodell
Umsetzung
FB Automatisierung und Informatik: Einf. In Datenbanken
15
Konzeptionelles Datenmodell entwickeln
„
Datenmodell
–
–
–
„
Abhängig von den Zielen
... Und den Anforderungen!!!
Ohne genaue Festlegung der Ziele und der
Anforderungen kann keine ordentliche Datenbank
entstehen!
Das konzeptionelle Datenmodell ist
Voraussetzung zur Umsetzung mittels eines
kommerziellen DBMS
FB Automatisierung und Informatik: Einf. In Datenbanken
16
Konzeptionelles Datenmodell
„
Typen
–
–
–
„
Konzeptionell
Logisch
Physisch
Konzeptionelles Modell unabdingbar für
Implementierung
–
–
–
Auf Vollständigkeit prüfen
Auf Qualität prüfen
Mit Nutzern diskutieren
FB Automatisierung und Informatik: Einf. In Datenbanken
17
Erste Erkenntnis
„
Vor der Implementierung müssen eine Reihe
arbeitsaufwendiger Schritte durchgeführt werden:
–
Anforderungsanalyse
–
Konzeption
–
Datenmodellierung
FB Automatisierung und Informatik: Einf. In Datenbanken
18
Basisdaten: Länder und Hauptstädte
Bundesländer
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Berlin,
Brandenburg (Potsdam)
Mecklenburg
- Vorpommern (Schwerin),
Hamburg,
Bremen,
Schleswig- Holstein (Kiel),
Niedersachsen (Hannover),
Sachsen
- Anhalt (Magdeburg),
Nordrhein
- W
estfalen (Düsseldorf),
Hessen (Wiesbaden),
Saarland (Saarbrücken),
Rheinland- Pfalz (Mainz),
Sachsen (Dresden),
Thüringen (Erfurt),
Bayern (München),
Baden- Württemberg (Stuttgart)
FB Automatisierung und Informatik: Einf. In Datenbanken
19
Weitere Basisdaten
„
„
„
„
„
„
„
„
Einwohnerzahlen
Städtische/ländliche Bevölkerung
Männliche/weibliche Bevölkerung
Bevölkerung < 6 J., 6 – 10 J., 10 – 18 J., 18 – 36 J., 36 –
64 J., > 64 J.
Privathaushalte
Eheschließungen
Geborene, Gestorbene
Hochschulen, Studierende
FB Automatisierung und Informatik: Einf. In Datenbanken
20
Datenmodell
„
Anforderungen
–
Ausgangspunkt:
Karte mit Ländern und Hauptstädten (Bundesländer
„anklickbar“)
–
„Klick“ Bundesland: Basisdaten/statistische Daten
–
„Klick“ Hauptstadt: Basisdaten/statistische Daten
FB Automatisierung und Informatik: Einf. In Datenbanken
21
Datenmodelle
Hierarchisches Modell
„ Netzwerkmodell
„ Relationales Modell
„ Objekt-relationales Modell
„ Objekt-orientiertes Modell
„
FB Automatisierung und Informatik: Einf. In Datenbanken
22
Datenmodell: Relationales Modell
„
Tabellen
–
–
–
–
–
–
Zeilen
Spalten
Tabellenname
übersichtlich
einfach
effizient
FB Automatisierung und Informatik: Einf. In Datenbanken
23
Tabellen-orientiert
Hamburg
Bremen
Niedersachsen
SachsenAnhalt
NordheinWestfalen
Hessen
Saarland
Hauptstadt
Hamburg
Bremen
Hannover
Magdeburg
Düsseldorf
Wiesbaden
Saarbrücken
EWZ
1702000
671000
7853000
2690000
17971000
6032000
1077000
Privathaushalte
916000
348000
3578000
1210000
8267000
2763000
508000
Studierende
66461
25772
144364
35358
512031
148992
20422
FB Automatisierung und Informatik: Einf. In Datenbanken
24
Tabellenstruktur
„
Aufsplitten „großer“ in „kleine“ Tabellen
–
Bessere Übersicht
–
Bessere Handhabung
–
Änderungen einfach und sicher
–
Operationen einfacher
–
Abfragen besser formulierbar
–
Tabellen zusammenfügen, wenn nötig
FB Automatisierung und Informatik: Einf. In Datenbanken
25
Tabellenstruktur
Hauptstädte
Einwohner
Hauptstadt
Niedersachsen
Hannover
Sachsen-Anhalt
Magdeburg
1995
1998
Niedersachsen
7746000
7853000
Sachsen-Anhalt
2750000
2690000
Studierende
Unis
FHs
Niedersachsen
103892
35190
Sachsen-Anhalt
20477
13306
Hamburg
48577
15049
FB Automatisierung und Informatik: Einf. In Datenbanken
26
Tabellen
„
Spalten: Attribute
„
Zeilen: Datensätze
„
Tabellenname
„
Identifikatoren für Datensätze (Schlüssel)
„
Konzeptionelles Modell: Entity-RelationshipModell (ERM)
„
Z. B. Access, dBase, Paradox, Oracle, Informix,
Interbase, Firebird, mySQL, DB/2
FB Automatisierung und Informatik: Einf. In Datenbanken
27
Tabellen
„
„
„
...sind die Basis des relationalen Datenmodelles
... und relationaler Datenbanken
... Und den darauf aufsetzenden
Datenbankmanagementsystemen
FB Automatisierung und Informatik: Einf. In Datenbanken
28
Von Dateiverwaltung zur Datenbanktechnologie
Frühzeit 1950-1967
„ Es gab nur Großrechner, Zimmergröße
„ Hauptinteresse war die Codierung, numerische Programmierung
„ Den Daten wurde wenig Aufmerksamkeit geschenkt
„ Vorwiegend numerische Daten
„ Hauptspeichergröße: 50 kB
„ Programmiersprachen: Assembler, Algol, Fortran
„ bis 1963 nur elementare Daten im Programm
–
–
Massenverarbeitung auf Großrechnern
(Anhang an den Lochkarten)
FB Automatisierung und Informatik: Einf. In Datenbanken
29
Von Dateiverwaltung zur Datenbanktechnologie
„
ab 1963 wurde das „Dateikonzept“ entwickelt
–
–
–
–
–
„
Ein Datei besteht aus einer Menge von Datensätzen, die ein internes Format
haben
Organisationsform: sequentiell, index- sequentiell, regional
Verarbeitungsform: Lesen, Schreiben, Fortschreiben, Verändern,
Satzform: Sätze fester oder variabler Länge, eventuell zu Blöcken
zusammengefasst (struct, record).
Medium: Art des externen Gerätes (Magnetplatte, Magnetband,...).
Dateiformate:
Feste Datenlänge
Variable Datenlänge (Bitmap, Winword)
rec1
rec1
rec2
rec2
rec3
rec3
FB Automatisierung und Informatik: Einf. In Datenbanken
30
Dateikonzept
FB Automatisierung und Informatik: Einf. In Datenbanken
31
Eigenschaften des Dateikonzeptes:
„
„
„
„
„
„
„
„
„
Datei als Organisationseinheit
Zugriff des Anwenders durchs Betriebssystem
Unterschiedliche Nutzer
Die Dateien waren bestimmten Programmen fest zugeordnet.
Anwendungsspezifische Datenorganisation
Eventuell mit einer Kopie arbeiten (?!)
Logisch gemeinsame Daten waren auf mehrere unabhängige
Dateien verteilt.
Keine Rechteverteilung
Keine Synchronisation
FB Automatisierung und Informatik: Einf. In Datenbanken
32
Eigenschaften des Dateikonzeptes:
„
Redundante Daten
–
Verschwendung von Ressourcen
‹ Speicherplatz,
‹ Arbeitskraft,
–
„
„
„
„
Zeit, Geld
Gefahr von Inkonsistenzen bei Veränderungen
plattformabhängig
anwendungsabhängig
ineffizient bei großen Datenmengen
parallele Zugriffe durch mehrere Nutzer schwierig
–
unkontrolliertes Überschreiben
FB Automatisierung und Informatik: Einf. In Datenbanken
33
Elementare Dateien (Variante a)
Umweltsünder
identifizieren
Bescheide
erstellen
Aufgabe n
GIS
Textverarbeitung
Anwendung n
Betriebssystem, Dateiverwaltung
Datei 1
Format 1
Datei 2
Format 2
Adressen
FB Automatisierung und Informatik: Einf. In Datenbanken
Datei n
Format n
34
Elementare Dateien (Variante b)
Umweltsünder
identifizieren
Bescheide
erstellen
Aufgabe n
GIS
Textverarbeitung
Anwendung n
Betriebssystem, Dateiverwaltung
Datei 1
Format 1
Datei 2
Format 2
Adressen
FB Automatisierung und Informatik: Einf. In Datenbanken
Datei n
Format n
35
Beispiel „Umweltsünderkartei“
„
„
„
Schadenfälle dokumentieren
Adressen, personenbezogene Daten verwalten
Abfrage der Daten
–
Wer hat wann was getan, und wo?
–
Zeige mir alle Datensätze mit Umweltsündern, die bereits
öfter als 3x als solche in Erscheinung getreten sind und
ihren Wohnort in Wernigerode haben
FB Automatisierung und Informatik: Einf. In Datenbanken
36
Probleme
„
„
„
anwendungsabhängig
ineffizient bei großen Datenmengen (?)
parallele Zugriffe durch mehrere Nutzer, mehrere
Anwendungen schwierig (?)
–
unkontrolliertes Überschreiben
FB Automatisierung und Informatik: Einf. In Datenbanken
37
Von Dateiverwaltung zur Datenbanktechnologie
„
„
„
„
„
„
Aufbruch bis Neuzeit 1968-2004
Der Übergang von der klassischen, programmzentrierten Sicht zur
datenzentrierten Sicht (Datenbanktechnologie) wurde etwa 1968 bis 1970
vollzogen.
Begleitet wurde diese Entwicklung von einer raschen Kapazitätszunahme
externer Massenspeicher und von der Tatsache, dass die Daten immer
wertvoller wurden.
Die Verfügbarkeit der Daten und der Zugriff im Dialog wurden wichtiger
als umfangreiche Auswertungsalgorithmen.
Das Datenmodell beschreibt die “logische Struktur der Datenbasis”. Der
Nutzer hat eine Datenbankabfragesprache “SQL” (Structured Query
Language) zur Wiedergewinnung von Informationen aus der Datenbasis
zur Verfügung.
Als Mittler zwischen Nutzer und Datenbasis arbeitet ein „Datenbankmanagementsystem”- DBMS (DataBase Management System).
FB Automatisierung und Informatik: Einf. In Datenbanken
38
3. Stufe: Datenbanksysteme
„
zentrale Datenhaltung für alle Anwendungen
„
Trennung der Daten von den Anwendungen
„
Datenbankverwaltungssystem (DBMS)
„
viele Dienstprogramme
„
unterschiedliche Anwendungsprogramme
FB Automatisierung und Informatik: Einf. In Datenbanken
39
Datenbanksysteme
Anwendung 1
Anwendung 2
Anwendung n
DBMS
Datenbank
Datenbanksystem
FB Automatisierung und Informatik: Einf. In Datenbanken
40
Übergang zum Datenbankkonzept
FB Automatisierung und Informatik: Einf. In Datenbanken
41
Eigenschaften des Datenbankkonzeptes (1)
„
„
„
„
„
Die Verfügbarkeit der Daten und der Zugriff im Dialog wurden
wichtiger als umfangreiche Auswertungsalgorithmen.
Das Datenmodell beschreibt die „logische Struktur der Datenbasis“.
Der Nutzer hat eine Datenbankabfragesprache „SQL“ (Structured
Query Language) zur Wiedergewinnung von Informationen aus der
Datenbasis zur Verfügung.
Als Mittler zwischen Nutzer und Datenbasis arbeitet ein
„Datenbankmanagementsystem“ - DBMS (DataBase Management
System).
Eine weitere Möglichkeit besteht für den Nutzer einer Datenbank
darin, die „Entwicklungsumgebung“ einer Datenbank zu verwenden,
um komplexere Abfragen über der Datenbasis zu formulieren. Diese
„4GL“-Sprachen erlauben die Erstellung von kompletten (SQL-)
Programmen
FB Automatisierung und Informatik: Einf. In Datenbanken
42
Eigenschaften des Datenbankkonzeptes (2)
„
„
„
„
Ein Datenbanksystem besteht aus einer Datenbank, einem
Datenverwaltungssystem und einer Kommunikationsschnittstelle (z.
B. Abfragesprachen wie SQL).
In einer Datenbank lassen sich umfangreiche Datenbestände
langfristig speichern und verwalten
Die gespeicherten Daten werden vom Datenbankverwaltungssystem
verwaltet und kontrolliert
Das Arbeiten mit einer Datenbank wird über die
Kommunikationsschnittstelle weitgehend durch Datenbanksprachen
gewährleistet
FB Automatisierung und Informatik: Einf. In Datenbanken
43
Modell eines Datenbanksystems
Realität
Datenmodell
Datenbanksystem
-Datenbank
-DB
- Verwaltungssystem
-Kommunikations-schnittstelle
FB Automatisierung und Informatik: Einf. In Datenbanken
44
Daten, analog
Datenbank modellieren
Datenbankimplementierung
FB Automatisierung und Informatik: Einf. In Datenbanken
45
Anforderungen an eine Datenbank
„
„
„
„
„
„
„
„
langfristig
skalierbar
verteilt
sicher
schnell
plattformunabhängig
anwendungsneutral
einfach zu bedienen
FB Automatisierung und Informatik: Einf. In Datenbanken
46
Definition 1: Datenbanktechnologie
Unter der Bezeichnung Datenbanktechnologie seien alle
Aufgaben, Hilfsmittel und Lösungen zu verstehen, die
notwendig sind für:
„
„
„
die Entwicklung von Datenbanksystemen,
die Benutzung von Datenbanksystemen und dabei
insbesondere
die Entwicklung von Anwendersoftware auf der Basis von
Datenbanksystemen.
FB Automatisierung und Informatik: Einf. In Datenbanken
47
Definition 2: Datenbank
Die Datenbank ist eine Ansammlung von Daten, die nach
bestimmten Verfahren des Datenbankdesign aus der innerbetrieblichen Datenmodellierung strukturiert eingegeben wurden.
Dabei lassen sich folgende Anforderungen bezüglich der
Abspeicherung der Daten formulieren:
„
„
„
redundanzfreie, bzw. redundanzarme Abspeicherung der
Daten,
konsistente Abspeicherung der Daten und
sichere Abspeicherung der Daten.
FB Automatisierung und Informatik: Einf. In Datenbanken
48
Definition 3: Datenbankmanagementsystem
Ein Datenbankmanagementsystem umfasst die Gesamtheit von
Software zur Datenverwaltung in einem Unternehmen. Als Basis
dienen Systeme von so genannten Datenbankherstellern, z.B.:
„
„
„
„
„
„
ORACLE? – Oracle Server 9i,
IBM
– DB2,
Microsoft – SQL Server
Borland
– Interbase, Firebird
Informix
Postgre SQL
FB Automatisierung und Informatik: Einf. In Datenbanken
49
Definition 4: Datenbanksystem
Ein Datenbanksystem ist die Verbindung aus der Datenbank
(DB) und dem Datenbankmanagementsystem (DBMS)
DBS = DB + DBMS
Der Umstand, dass ein DBMS von einem Hersteller nicht allein
als Datenbankmanagementsystem für den Anwender ausreichend
ist, stellt eine zentrale Überlegung dar.
Stand beim klassischen Softwarekonzept das Programm im
Mittelpunkt, während die Daten eine eher untergeordnete Rolle
spielten, so verhält es sich bei Datenbanksystemen
(„objektorientierte“ Datenbanken ausgenommen) genau
umgekehrt.
FB Automatisierung und Informatik: Einf. In Datenbanken
50
Begriffe (Wiederholung)
Datenbanksystem (DBS)
DatenBankManagementSystem (DBMS)
z. B. Informix, Oracle
Datenbank (DB)
(Daten)
0Häufig wir der Begriff Datenbank synonym mit
Datenbanksystem verwendet.
FB Automatisierung und Informatik: Einf. In Datenbanken
51
Definition 5: Redundanz
Unter Redundanz versteht man „überflüssige“, d.h. mehrfach
gehaltene Information, die auch mehrfach zu pflegen ist und daher früher oder später zur Inkonsistenz der Datenbank führt.
Definition 6: Inkonsistenz
Die Dateninkonsistenz ist eine Widersprüchlichkeit, die aus den
Informationen der Datenbank resultiert.
FB Automatisierung und Informatik: Einf. In Datenbanken
52
Datenbanken
Während beim konventionellen Programmieren eine vollständige
formale Spezifikation zu Algorithmen-Entwicklung gefordert wird,
kann das von einer Datenbankapplikation oft nicht verlangt werden.
Die Datenbankentwicklung ist also nicht als linearer, zirkelfreier und
terminierender Prozess zu verstehen, sondern als periodisch
auftretendes Phänomen gängiger Bestandteil der Datenbankpraxis.
FB Automatisierung und Informatik: Einf. In Datenbanken
53
Vorteile einer Datenbank
„
Verschiedenen Nutzergruppen steht eine Datenbasis für eine
gemeinsame Nutzung zur Verfügung, die Nutzung erfolgt sowohl im
Dialog als auch durch Programme bzw. Applikationen.
„
Die Datenbasis als Modell eines Realitätsausschnittes erlaubt
verschiedenen Nutzern eine unterschiedliche Sicht auf die Daten.
„
Die realen Daten sind unabhängig von Nutzerprogrammen und applikationen und damit von Verarbeitungsprozessen, und die
Nutzung ist unabhängig von der physischen Speicherungsform.
„
Durch die zentralisierte Verwaltung (durch einen DBA – Data Base
Administrator) wird Redundanz vermieden und inhaltliche
Vollständigkeit „Integrität“ sowie die logische Korrektheit
„Konsistenz“ gesichert, durch eine Nutzerverwaltung lassen sich
„Zugriffsrechte“ vergeben und überwachen - „Datenschutz“.
FB Automatisierung und Informatik: Einf. In Datenbanken
54
Datenunabhängigkeit
Aus den vorangegangenen Überlegungen ist die
Unabhängigkeit des Modells von der Realisierung zu fordern:
1. Physische Datenunabhängigkeit:
Die Unabhängigkeit zwischen (portablen Programmen) und
physikalischer Datendarstellung und Speicherung ist der erste
Schritt zur Maschinenunabhängigkeit des Datenbanksystems.
2. Logische Datenunabhängigkeit:
Hier wird eine weitgehende Unabhängigkeit der Software vom
Datenbankmodell gefordert.
FB Automatisierung und Informatik: Einf. In Datenbanken
55
Definition 7: physische Datenunabhängigkeit
Die physische Datenunabhängigkeit der auf der Datenbank
arbeitenden Programme ist zu gewährleisten, d.h., die
Programme seien invariant gegenüber Änderungen in der
physischen Abspeicherung der Daten.
Definition 8: logische Datenunabhängigkeit
Die logische Datenunabhängigkeit der auf der Datenbank arbeitenden Programme ist zu gewährleisten, d.h., die Programme
seien invariant gegenüber Änderungen und Erweiterungen von
Struktur und Inhalt der Datenbank.
FB Automatisierung und Informatik: Einf. In Datenbanken
57
Schemata
FB Automatisierung und Informatik: Einf. In Datenbanken
58
„
Konzeptionelles Schema, logische Gesamtsicht, rechnerunabhängig:
Hier kann man von einer Spezifikation des Datenmodells bzw. der formalen
Beschreibung der realen Welt sprechen.
„
Logisches Schema, DBS
- abhängige Gesamtsicht:
Das logische Schema wird oft auch als „implementiertes konzeptionelles Schema“
bezeichnet. Dies ist jedoch maschinenunabhängig zu verstehen, es bezieht sich auf
das tatsächlich vorhandene Datenbanksystem.
Die Daten werden explizit in der (relationalen) Datenbank dargestellt. Dabei wird
die Datenbank vom Be-nutzer als eine Sammlung von Tabellen wahrgenommen.
Dies sagt jedoch nichts über die interne Struktur aus.
„
Internes Schema , DBS
- abhängige physische Datenorganisation:
Das interne Schema ist durch das Datenbankmanagementsystem festgelegt und für
den Benutzer i. a. nicht zugänglich. Dies entlastet einerseits den Benutzer.
Andererseits liegt hier auch ein Ansatzpunkt für Datenschutz und -sicherheit. Das
interne Schema ist aus Nutzersicht allenfalls für gewisse Tuning-Maßnahmen (Index,
Cluster, usw.) relevant.
„
Externes Schema, DBS
- abhängige Anwendersicht:
Eine spezielle Anwendersicht auf das logische Schema wird als externes Schema
bezeichnet. Darin ist es besonders ausgeprägt möglich, Probleme des
Zugriffsschutzes in Multiuser-Umgebungen zu behandeln.
FB Automatisierung und Informatik: Einf. In Datenbanken
59
Schichtenmodell einer Datenbank
FB Automatisierung und Informatik: Einf. In Datenbanken
60
Herunterladen