2x2 - DBAI

Werbung
Datenmodellierung VU - Einführung
Datenmodellierung VU - Einführung
1. Motivation
Motivation
184.685 Datenmodellierung VU
Einführung WS 2015
Wir haben heute
Große Datenmengen . . .
. . . in den unterschiedlichsten Bereichen
Sebastian Skritek
Verteilte Applikationen
Institut für Informationssysteme
Technische Universität Wien
Kritische Anwendungen
Sebastian Skritek
Seite 1
Datenmodellierung VU - Einführung
1. Motivation
Sebastian Skritek
Datenmodellierung VU - Einführung
Seite 2
1. Motivation
1.1. Datenbankverwaltungssysteme DBMS
Zusätzliche Anforderungen an die Software
Motivation
Wir haben heute
Probleme:
Große Datenmengen . . .
Redundanz und Inkonsistenz
Verlust von Daten
. . . in den unterschiedlichsten Bereichen
Mehrbenutzerbetrieb
Verteilte Applikationen
Sicherheitsprobleme
Integritätsverletzungen
Kritische Anwendungen
Beschränkte Zugriffsmöglichkeiten
Hohe Entwicklungskosten
⇒ benötigen Software zur effizienten Verarbeitung
Sebastian Skritek
Seite 3
Sebastian Skritek
Seite 4
Datenmodellierung VU - Einführung
1. Motivation
1.1. Datenbankverwaltungssysteme DBMS
Datenbankverwaltungssystem (DBMS)
Datenmodellierung VU - Einführung
2. Datenabstraktion und Datenunabhängigkeit
Datenabstraktion und Datenunabhängigkeit
Datenbankverwaltungssystem
(Database Management System – DBMS):
Gesamtheit der Programme zum Zugriff auf die gespeicherten
Daten
Datenbasis:
Die gespeicherten Daten
physische Ebene
Sebastian Skritek
Datenmodellierung VU - Einführung
Seite 5
2. Datenabstraktion und Datenunabhängigkeit
Sebastian Skritek
Datenmodellierung VU - Einführung
Datenabstraktion und Datenunabhängigkeit
Seite 6
2. Datenabstraktion und Datenunabhängigkeit
Datenabstraktion und Datenunabhängigkeit
externe Ebene (Sichten)
Sicht 1
Sebastian Skritek
...
logische Ebene
logische Ebene
physische Ebene
physische Ebene
Seite 7
Sebastian Skritek
Sicht n
Seite 8
Datenmodellierung VU - Einführung
2. Datenabstraktion und Datenunabhängigkeit
Datenmodellierung VU - Einführung
Datenabstraktion und Datenunabhängigkeit
2. Datenabstraktion und Datenunabhängigkeit
Datenabstraktion und Datenunabhängigkeit
externe Ebene (Sichten)
Sicht 1
...
externe Ebene (Sichten)
Sicht n
Sicht 1
...
Sicht n
logische Datenunabhängigkeit
logische Ebene
logische Ebene
physische Datenunabhängigkeit
physische Datenunabhängigkeit
physische Ebene
physische Ebene
Sebastian Skritek
Seite 9
Datenmodellierung VU - Einführung
2. Datenabstraktion und Datenunabhängigkeit
Sebastian Skritek
Seite 10
Datenmodellierung VU - Einführung
Datenabstraktion und Datenunabhängigkeit
2. Datenabstraktion und Datenunabhängigkeit
Datenabstraktion und Datenunabhängigkeit
externe Ebene (Sichten)
Sicht 1
...
externe Ebene (Sichten)
Sicht n
Sicht 1
logische Datenunabhängigkeit
Sicht n
logische Datenunabhängigkeit
logische Ebene
Datenbankschema
physische Datenunabhängigkeit
logische Ebene
physische Datenunabhängigkeit
physische Ebene
Sebastian Skritek
...
physische Ebene
Seite 11
Sebastian Skritek
Seite 12
Datenmodellierung VU - Einführung
3. Datenmodellierung
Datenmodellierung VU - Einführung
Datenmodellierung
Datenmodellierung
Ausschnitt der
realen Welt
Ausschnitt der
realen Welt
3. Datenmodellierung
Konzeptuelles Schema
Sebastian Skritek
Datenmodellierung VU - Einführung
Seite 13
3. Datenmodellierung
ER/EER/UML
Sebastian Skritek
Seite 14
Datenmodellierung VU - Einführung
Datenmodellierung
Datenmodellierung
Ausschnitt der
realen Welt
Ausschnitt der
realen Welt
3. Datenmodellierung
manuelle/intellektuelle Modellierung
Konzeptuelles Schema
Logisches Schema
Sebastian Skritek
ER/EER/UML
Konzeptuelles Schema
Datenmodell: Netzwerk, hierarchisch,
relational, oo, deduktiv, XML, . . .
Logisches Schema
Seite 15
Sebastian Skritek
ER/EER/UML
Datenmodell: Netzwerk, hierarchisch,
relational, oo, deduktiv, XML, . . .
Seite 16
Datenmodellierung VU - Einführung
3. Datenmodellierung
Datenmodellierung VU - Einführung
Datenmodellierung
3. Datenmodellierung
Datenmodellierung (Bsp.)
1
Abgrenzung der zu modellierenden Welt
Ausschnitt der
realen Welt
manuelle/intellektuelle Modellierung
Konzeptuelles Schema
ER/EER/UML
halbautomatische Transformation
Datenmodell: Netzwerk, hierarchisch,
Logisches Schema
relational, oo, deduktiv, XML, . . .
Sebastian Skritek
Seite 17
Datenmodellierung VU - Einführung
3. Datenmodellierung
1
Abgrenzung der zu modellierenden Welt
reale Welt: Universität
reale Welt: Universität
Vorlesungen
Studenten
Studenten
Lehrende
Lehrende
2
Sebastian Skritek
3. Datenmodellierung
Datenmodellierung (Bsp.)
Abgrenzung der zu modellierenden Welt
Vorlesungen
Seite 18
Datenmodellierung VU - Einführung
Datenmodellierung (Bsp.)
1
Sebastian Skritek
Seite 19
Überführung der zu modellierenden Welt in ein konzeptuelles
Schema (in der VL: EER)
Sebastian Skritek
Seite 20
Datenmodellierung VU - Einführung
3. Datenmodellierung
Datenmodellierung VU - Einführung
Datenmodellierung (Bsp.)
1
3. Datenmodellierung
Datenmodellierung (Bsp.)
Abgrenzung der zu modellierenden Welt
3
reale Welt: Universität
Vorlesungen
Überführung des konzeptuellen Schemas in ein logisches
Schema (in der VL: Relationales Schema)
Studenten
Lehrende
2
Überführung der zu modellierenden Welt in ein konzeptuelles
Schema (in der VL: EER)
MatrNr
Studenten
Professoren
N
M
Vorlesungen
hören
N
1
PersNr
Name
lesen
.......
Rang
.......
VorlNr
Raum
Sebastian Skritek
Seite 21
Datenmodellierung VU - Einführung
3. Datenmodellierung
Datenmodellierung VU - Einführung
Datenmodellierung (Bsp.)
3
Sebastian Skritek
Seite 22
3. Datenmodellierung
Datenmodell
Überführung des konzeptuellen Schemas in ein logisches
Schema (in der VL: Relationales Schema)
Datenmodell:
Studenten
hören
Vorlesungen
MatrNr
Name
MatrNr
VorlNr
VorlNr
Titel
24002
Xenokrates
26120
5001
5001
Grundzüge
25403
Jonas
24002
5001
5041
Ethik
26120
Fichte
24002
4052
5049
Mäeutik
26830
Aristoxenos
...
...
4052
Logik
28106
Carnap
5216
Bioethik
29555
Feuerbach
...
...
...
...
Sebastian Skritek
Legt generelle Strukturen und Operationen fest, die zur
Modellierung genutzt werden können
Seite 23
Sebastian Skritek
Seite 24
Datenmodellierung VU - Einführung
3. Datenmodellierung
Datenmodellierung VU - Einführung
3. Datenmodellierung
3.1. Das Relationale Datenmodell
Das Relationale Datenmodell
Datenmodell
Datenmodell:
Legt generelle Strukturen und Operationen fest, die zur
Modellierung genutzt werden können
Besteht aus:
Edgar F. Codd (1923-2003)
A Relational Model of Data for Large
Shared Data Banks in: Communications of the ACM, Volume 13, Issue 6
(June 1970) Pages: 377 - 387 (1970)
• Datendefinitionssprache (DDL)
• Datenmanipulationssprache (DML)
Abfragesprache (QL)
Befehle zum Einfügen, Löschen, und Verändern der Daten
Turing Award (1981) = Nobelpreis
der Informatik
Sebastian Skritek
Datenmodellierung VU - Einführung
Seite 25
3. Datenmodellierung
3.1. Das Relationale Datenmodell
Das Relationale Datenmodell
Sebastian Skritek
Datenmodellierung VU - Einführung
Seite 26
3. Datenmodellierung
3.2. Moderne Relationale DBMS
Moderne Relationale DBMS
Anforderungen an das Modell nach E.F. Codd
Datenintegration (einheitliche Verwaltung der Daten)
Operationen (Speichern, Suchen, Ändern)
ANSI-SPARC Architektur
Katalog (Zugriff auf Datenbeschreibung)
DDL/DML: SQL (Structured Query Language)
Benutzersichten (applikationsspezifische Sicht)
Einbettung in Programmiersprachen
Konsistenzüberwachung (logische Korrektheit der Daten)
Tools (zB Entwurf, Masken, Interaktion, ...)
Zugriffskontrolle (Datenschutz)
Mehrbenutzerbetrieb, Sicherheitsmechanismen
Transaktionen (unteilbare Operationsblöcke)
Oracle, IBM DB2, MS SQL Server, PostgreSQL, MySQL, . . .
Synchronisation (Mehrbenutzerbetrieb)
Datensicherung (Wiederherstellung nach Systemcrash)
Sebastian Skritek
Seite 27
Sebastian Skritek
Seite 28
Herunterladen