Einführung in die Datenbanktechnik

Werbung
Informatik für Oekonomen
Teil II
Datenbanktechnik
(Prof. Dr. Klaus R. Dittrich)
(5 Wochen)
Software Engineering
Sicherheit
(Prof. Dr. Martin Glinz)
(5 Wochen)
(Prof. Dr. Burkhard Stiller)
(3 Wochen)
Einführung in die
Datenbanktechnik
Prof. Dr. Klaus R. Dittrich
I-2
Einführung in die Datenbanktechnik
Grundlagen & Zusammenhänge
Was ist eine Datenbank, was ist ein Datenbanksystem, wozu
das alles ? Aufgaben von Datenbankverwaltungssystemen,
Grundbegriffe, Arbeitsweise
Relationales Datenmodell
Grundsätze, Relationen, Tupel, Integritätsbedingungen,
einfaches SQL (Datendefinition und Datenmanipulation)
Datenbankentwurf
Schrittweiser Entwurfsvorgang, konzeptuelle Modellierung,
das Gegenstands- /Beziehungsmodell und seine Anwendung,
Regeln für die Umsetzung konzeptueller Schemata
I-3
ANGESTELLTER VName
Kurt
Beate
Ruedi
Boris
Sonja
Guiseppe
Amando
Mirella
ABTEILUNG
NName AHV# Gebtag Adresse Geschlecht Salär Vorges Abt
Huesli
5908 30.12.1973 Zürich
m
30000 8635
5
Tell
8635 14.01.1970 Küssnacht
w
40000 6608
5
Becker
6736 24.12.1979 Wallisellen
m
25000 9260
4
Frisch
9260 03.06.1981 Zug
m
43000 6608
4
Maradona 7639 11.11.1974 Bern
w
38000 8635
5
Wagner
2938 04.03.1979 Zürich
m
25000 8635
5
Verdi
4077 19.08.1972 Dübendorf
m
25000 9260
4
Freni
6608 22.06.1968 Dübendorf
w
55000 NULL
1
AName
Forschung
Verwaltung
Management
ANummer
5
4
1
Leiter
8635
9260
6608
PROJEKT PName
PNummer POrt Abt
ProduktX
1
Zug
5
ProduktY
2
Baden 5
ProduktZ
3
Kloten 5
Informatik
10
Zürich 4
Reorganisation
20
Kloten 1
Soziales
30
Zürich 4
Anfdatum
22.05.2001
01.01.2004
19.06.2003
ABT_ORT ANummer
1
4
5
5
5
AOrt
Kloten
Zürich
Zug
Baden
Kloten
I-4
ARBEITET_AN Ang
5908
5908
7639
2938
2938
8635
8635
8635
8635
6736
6736
4077
4077
9260
9260
6608
ANGEHÖRIGER Ang
8635
8635
8635
9260
Projekt Stunden
5908
1
32.5
5908
2
7.5
5908
3
40.0
1
20.0
2
20.0
2
10.0
3
10.0
10
10.0
20
10.0
30
30.0
10
10.0
10
35.0
30
5.0
30
20.0
20
15.0
20
NULL
Name Geschlecht Gebtag Verwgrad
Alice
w
05.04.2001 Tochter
Max
m
25.10.2004 Sohn
Ueli
m
03.05.1968 Ehemann
Greti
w
28.02.1983 Ehefrau
Beat
m
01.01.2002 Sohn
Alice
w
31.12.2005 Tochter
Liesli
w
03.05.1977 Ehefrau
I-5
Datenbank (DB)
eine Menge zusammengehörender Daten
mit folgenden Eigenschaften:
dauerhaft verfügbar
(evtl.) verteilt im Rechnernetz
potentiell gross
integriert
verwendbar unabhängig vom Erzeugungsprogramm
mehrfachbenutzbar („parallel zugreifbar”)
konsistent, integer, sicher („Datenqualität”)
bequem, flexibel und effizient handhabbar
(„assoziativer Zugriff”)
I-6
Prozessor
HgSp
HSp
I-7
Gegenstandssystem
Informationssystem
„Tell & Co.”
„546 Mitarbeiter”
„Umsatz 102.3 Mio CHF”
„Hans Gessler”
„Salär 76’500 CHF”
„verheiratet, „2 Kinder”
I-8
Gegenstandssystem und Informationssystem
Fakten
(Geschäfts-) Regeln
Vorschriften
(Geschäfts-) Prozesse
...
Gegenstandssystem
(Realweltsystem)
Modellierung
Erfassung
Interpretation
Steuerung
Informationssystem
Daten
IS-Regeln
Programme
Workflows/Prozesse
...
rechnergestütztes IS
I-9
Informationsverarbeitung
Sachverhalte der Realwelt
(Geschäftsprozesse)
Modellierung
(Abstraktion)
Zuordnung
(Steuerung)
Modelle
(Informationen)
algorithmische
Formulierung
physische
Repräsentation
Daten
(Bezeichner)
Interpretation
Daten
Programme
Eingabe
(Bezeichner)
Ausgabe
DV-System
I-10
Datenmodell
(eigentlich: ein Metamodell)
Menge von Konzepten zur Beschreibung der Struktur
einer Datenbank ( ... der interessierenden Umwelt; <––> DDL)
data
definition
language
+
Operatoren zum Umgang mit entsprechender Datenbank
(einfügen, ändern, löschen, wiederfinden; <––> DML)
data manipulation language
Struktur: elementare Datenelemente
zusammengesetzte Datenelemente
Beziehungen zwischen Datenelementen
I-11
Konsistenzregeln
Probleme bei Parallelbetrieb
CHF 919.20
Studi:
am Kontomat
abheben:
– CHF 100
CHF 3019.20
Konto #30501217
Stand CHF 1019.20
Oma:
am Schalter
einzahlen:
+ CHF 2000
1019.20
– 100.00
1019.20
+ 2000.00
= 919.20
= 3019.20
korrektes Ergebnis: CHF 2919.20
I-12
Datenqualitäten
(Daten-) Konsistenz: korrekte Widergabe
der Umweltsachverhalte
(Ablauf-) Integrität:
Abläufe erhalten Konsistenz
Datensicherheit:
abgeschlossene Änderungen
sind garantiert
Transaktionen als Arbeitseinheiten
Datenschutz:
nur erlaubte Verwendung
der DB möglich
I-13
Handhabbarkeit von DBen
gewünscht: bequem – flexibel – effizient
„welche Daten sind gefragt?“,
nicht „wie finde ich sie?“ (assoziativer Zugriff)
beliebige Daten/Kombinationen auswählbar
keine Kenntnisse über Geräte, Speicherung etc. notwendig
keine Kenntnisse über Buchführung notwendig
I-14
Datenbankverwaltungssystem
(database management system; DBMS)
Software zu Betrieb und Verwaltung von Datenbanken mit den
genannten Eigenschaften; realisiert insbesondere
ein Datenmodell (zur Beschreibung der Daten,
Umgang damit: DDL, DML; Schema)
eine Anfragesprache
Zugriffsschutz
evtl. Verteilung
ein Transaktionskonzept
(inkl. Wiederanlauf, Synchronisation)
effiziente Hintergrundspeicherverwaltung
(Zugriffspfade etc.),
I-15
Datenmodelle
konzeptuelle („höhere“, „semantische“) Datenmodelle
––> anwendungsnah, systemunabhängig
logische (Implementierungs-) Datenmodelle
––> Schnittstelle von DBMS (exakte Festlegung, inkl. DML)
physische („niedere“, „interne“) Datenmodelle
––> gerätenah, nur für Spezialisten
(wenn überhaupt zugänglich)
I-16
Datenmodelle
immer ist zu unterscheiden:
die Datenbank selbst
–
–
–
häufig Änderungen an der Tagesordnung
Struktur muss stets der Beschreibung genügen
formal: die Extension einer DB/DB-Instanz/
„Zustand“ der DB
die Beschreibung der Datenbank: das (DB-) Schema
– welche Struktur ist für eine DB gewünscht
(im Rahmen der Möglichkeiten des Datenmodells)?
– Änderungen möglich, aber eher selten
– Schema entwerfen: „Datenbankentwurf“
– formal: die Intension einer DB
I-17
Datenmodell/Schema/Datenbank
Datenschema
(Datentypen & Regeln)
DatenbankDatenbankentwurf
entwurf
Umweltsachverhalte:
Strukturen
&
Operationen
Datenbankbetrieb
Datenmodell
Datenmodell
–– Typen,
Typen,Konstruktoren
Konstruktoren
–– Operatoren
Operatoren
–– Konsistenzregeln
Konsistenzregeln
Datenbank
I-18
„Datenmodell“
I-19
„Schema“
I-20
„Datenbank“
I-21
Betrieb von
Datenbanksystemen
Systeminitialisierung
Datendefinition:
Schema
(DDL)
DDLCompiler
•
Anwenderprogramm
1 Anwenderprogramm
2 Anwenderprogramm
3 Anwenderprogramm
4
DMLCompiler
übersetztes
AWP 1
Datenbank
•
•
•
übersetztes
AWP n
Anfragesystem
Dienstprogramme
Datenbankverwaltungssystem
DBS
Primärdaten
Systemdaten
Hilfsdaten
I-22
Systembetrieb
Herunterladen