Einführung

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