Datenbanksysteme - Bildungsportal Sachsen

Werbung
Modul Datenbanksysteme
(auch Teil des Moduls Informationssysteme)
Prof. Dr. Heinrich Jasper
Prof
Dr Heinrich Jasper
TU Bergakademie Freiberg
Künstliche Intelligenz und Datenbanken
Künstliche Intelligenz und Datenbanken
Zielsetzung
• Die Studierenden sollen die Prinzipien relationaler Datenbanksysteme und die Datenmodellierung beherrschen.
• Themen: – Datenmodellierung
d lli
und Datenmanagement
d
– Das relationale Datenmodell einschließlich Algebra und Kalkül
– Datenbankdesign, vom Entity
Datenbankdesign vom Entity‐Relationship‐Modell
Relationship Modell über Transformationen, über Transformationen
logischem Design und Normalisierung zum physischen Design
– Datenbankadministration, SQL und Metadaten
– Integrität: logische und physische Integrität, Synchronisation und Transaktionen
– Architektur, Schnittstellen und Funktionen von Architektur Schnittstellen und Funktionen von
Datenbankmanagementsystemen
– Im praktischen Teil zu den Übungen ist ein Datenbanksystem im Team zu erstellen.
ll
1. Prof. Jasper: Datenbanksysteme
2
Inhalte / Gliederung
•
•
•
•
•
•
•
•
•
•
•
Einführung: Begriffe und Herangehensweise
(E)ER Modellierung: Beschreibung der Welt
(E)ER‐Modellierung: Beschreibung der Welt
Das relationale Datenmodell
Abbild
Abbildung ERM ‐> RDM / Schemata
ERM > RDM / S h
t
Qualität von Datenbankschemata
SQL D St d d d D t
SQL: Der Standard der Datenverwaltung
lt
Implementierungsaspekte von Datenbankmanagementsystemen
T
Transaktionen und ihre Korrektheit
ki
d ih K
kh i
Datensicherheit und Datenschutz
Objektorientierte und objektrelationale Datenbanken
Verteilte, aktive und temporale Datenaspekte
1. Prof. Jasper: Datenbanksysteme
3
Literatur
• Es gibt es viele gute Lehrbücher zum Thema Datenbanksysteme
ib
i l
h bü h
h
b k
• Beispiele: Beispiele:
– Kemper/Eickler: Datenbanksysteme: Eine Einführung, Oldenbourg, 1999
– Vossen: Datenmodelle, Datenbanksprachen und Datenbank‐
Management‐Systeme, Addison‐Wesley, 1994
– Kifer/Bernstein/Lewis: Database Systems, Pearson/Addison
Kifer/Bernstein/Lewis: Database Systems Pearson/Addison‐
Wesley, 2005
– Date: An Introduction to Database Systems, Addison‐Wesley, 1995
• Diese
Diese Vorlesung orientiert sich (teilweise exakt) an: Vorlesung orientiert sich (teilweise exakt) an:
– Elmasri/Navathe: Fundamentals of Database Systems, 5th ed., Pearson/Addison‐Wesley, 2007 (Achtung: komplette englische Ausgabe!)
1. Prof. Jasper: Datenbanksysteme
4
Organisation und Prüfungsmodalitäten
• Vorlesung
l
– Dienstags (7.30‐09.00 Uhr)
– Donnerstags (14.00 Donnerstags (14 00 – 15.30) ACHTUNG RAUMÄNDERUNG
15 30) ACHTUNG RAUMÄNDERUNG
• Übungen
– Freitags (16.00 – 17.30)
– Praktikumsaufgabe (ebenso wie die Übungsblätter) im Team (3 Personen)
– Erfolgreiche Bearbeitung der Praktikumsaufgabe hilft bei der Klausur!
• System
– MySQL 5 (siehe Übungen); (ORACLE 10g)
5 (siehe Übungen); (ORACLE 10g)
• Leistungsnachweis (Klausur)
g
(
)
1. Prof. Jasper: Datenbanksysteme
5
Datenbanksysteme: Einführung
• Geregelte Verwaltung von gemeinschaftlich genutzten Daten:
– Die Bedeutung der dauerhaften (persistenten) digitalen
Datenspeicherung wird immer größer
größer.
– Datenbestände existieren über eine längere Zeit, verschiedene
Interessenten (Benutzer) benutzen sie - zumindest partiell - gemeinsam
und sind somit an einem geregelten Datenunterhalt, an einer zentralen
Datenverwaltung, interessiert.
Benutzer 1
Datenbestände
Benutzer 2
Benutzer n
– Beispiele: Kundendaten, Adressen, Bankkonten, Banktransaktionen,
Umweltdaten, Kartenwerke, Web-Inhalte, Audio- und Videodaten.
1. Prof. Jasper: Datenbanksysteme
6
Datenbanksysteme: Einführung
• Begriffsbildung: Datenbankterminologie
– Ein Datenbankverwaltungssystem (DBMS: database management
system) organisiert einen auf Dauer angelegten Datenbestand und
macht ihn mehreren Benutzern (Anwendern) zugänglich. Die Daten
einschließlich ihrer Beschreibung (Schema) bilden eine Datenbank
(DB) Ein
(DB).
Ei DBMS kkann mehrere
h
D
Datenbanken
t b k verwalten.
lt
Ei
Eine
Datenbank zusammen mit dem sie verwaltenden DBMS wird auch
Datenbanksystem (DBS) genannt
Daten
Benutzer 1
Schema
Datenbank 1
DBMS
Benutzer 2
Daten
Benutzer n
Schema
Datenbank 2
Datenbanksysteme
1. Prof. Jasper: Datenbanksysteme
Benutzer
7
Datenbanksysteme: Einführung
• Typische Aktivitäten mit/auf Datenbanksystemen:
– Festlegung
Festlegung der relevanten Daten, ihrer Struktur und der Zusammenhänge der relevanten Daten ihrer Struktur und der Zusammenhänge
zwischen diesen Daten; Ergebnis sind Metadaten
– Einfügen, Ändern, Löschen von Daten, evtl. Laden großer Datenmengen
– Abfrage von Daten nach beliebigen Kriterien
Abf
D t
h b li bi
K it i
– Auswertung von Daten und Datenmengen, evtl. automatisch
– Kontinuierliche (automatische) Überwachung der Qualität der Daten und der Effizienz der Datenstrukturen – Zugriffskontrolle für alle Nutzer / Nutzergruppen
Zugriffskontrolle für alle Nutzer / Nutzergruppen
– Erstellung von Programmen oder Web‐Anwendungen, die die vom DBMS verwalteten Daten nutzen und ändern
lt t D t
t
dä d
– Einrichtung von Datenbanken, Nutzer(gruppen), Speichersystemen, Backup‐
und Recovery‐Komponenten
1. Prof. Jasper: Datenbanksysteme
8
Datenbanksysteme: Einführung
• Ein Beispiel: Studierendenverwaltung einer Universität:
1. Prof. Jasper: Datenbanksysteme
9
Datenbanksysteme: Einführung
• Eigenschaften von Datenbanksystemen:
– Ein Datenbanksystem ist eine selbständige (sich selbst beschreibende), auf Dauer und für
fl ibl und
flexiblen
d sicheren
i h
G b
Gebrauch
h ausgelegte
l
D
Datenorganisation,
i i
di einen
die
i
D
Datenbestand
b
d
(Daten und deren Metadaten) und die dazugehörige Verwaltung umfasst.
– Strukturierung der Daten: Der Datenbestand hat einen nachvollziehbaren "logischen"
logischen
inneren Aufbau so dass ein Benutzer sich auf bestimmte Daten und Datengruppen beziehen
kann; es gibt keine ungeordnete Mehrfachspeicherung (kontrollierte Redundanz).
– T
Trennung der
d D
Daten
t undd Ihrer
Ih Organisation
O
i ti von den
d A
Anwendungen,
d
was beidseitig
b id iti unabhängiges
bhä i
Arbeiten ermöglicht:
• Datenunabhängigkeit: die Anwendungsprogramme sind "datenunabhängig", d.h. interne
Reorganisationen innerhalb des Datenbanksystems tangieren die Anwendungsprogramme nicht.
nicht
• Flexibilität: Die Datenbank ist nicht nur für die momentan vorhandenen Anwendungen einsetzbar;
auch neue Bedürfnisse der Benutzer an die Daten sollen nachträglich befriedigt werden können.
• Datenintegrität: Die zur Wahrung der Datenintegrität wichtigsten Maßnahmen sind
– Eingabekontrolle zur Vermeidung der Aufnahme widersprüchlicher Daten (Datenkonsistenz).
– Datensicherung gegen Verlust und Verfälschung der gespeicherten Daten (Hauptgefahr: technische und
manuelle Fehler).
– Datenschutz gegen missbräuchliche Verwendung der Daten (insbesondere durch Regelung der
Zugriffsberechtigungen, Zweckkonformität der Datenverwendung usw.).
1. Prof. Jasper: Datenbanksysteme
10
Datenbanksysteme: Einführung
• Typische Anwendergruppen: – Nutzer des Datenbanksystems
• D
Datenbankadministrator: Ressourcen und Zugriffsrechte, Überwachung, t b k d i it t R
d Z iff
ht Üb
h
Optimierung auf Hard‐ und Softwareebene; versteht das DBMS und die zugrundeliegende Hard‐ und Softwarelandschaft
• Datenbankdesigner: Definition der Inhalte und des (konzeptionellen) Verhaltens D
b kd i
D fi i i d I h l
d d (k
i
ll ) V h l
des Datenbanksystems; versteht die Bedürfnisse der Anwendergruppen und des „Geschäfts“
• Endanwender:
– Gelegenheitsnutzer: seltener Zugriff bei Bedarf
– Parametrisierte (naive) Nutzer: vordefinierte Funktionen (canned transactions) für die Mehrzahl der DB‐Nutzer
h hl d
– „Power‐User“: Kennen die DBS‐Funktionen und nutzen komplizierte Funktionen (direkt oder indirekt)
– Entwickler des Datenbanksystems
• DBMS‐Entwickler: Implementieren das DBMS bei einem Hersteller
• Tool‐Entwickler: Implementieren universelle Tools zur Unterstützung von Nutzern
1. Prof. Jasper: Datenbanksysteme
11
Datenbanksysteme: Einführung
• Abstaktionsebenen bei Datenbanksystemen:
– 3‐Ebenen der Abstraktion nach ANSI‐SPARC
• IInternes Schema
t
S h
b h ibt di h i h D t ll
beschreibt die physische Darstellung der Daten, z. B. als Array, d D t
B l A
Verbund etc. und ihre Ablage auf dem System (Datei, Speicherplatte)
• Konzeptionelles (logisches) Schema beschreibt die Datenbank universell in einem M d ll
Modell
• Externes Schema liefert eine spezifische Sicht für einen Benutzer oder eine Benutzergruppe
Datenbankadministrator
konzeptionelles
Schema
Datenbasis
internes
Schema
1. Prof. Jasper: Datenbanksysteme
externes
Schema A
B t A
Benutzer
externes
Schema B
B t B
Benutzer
12
Herunterladen