- Einführung April, 2011 1 von 30
Outline 1 Organisatorisches 2 Vorlesungsinhalt 3 Begrisklärung 4 Motivation 5 Abstraktion 6 Datenmodelle 7 Literaturangabe 2 von 30
Scheinkriterien Belegübung Regelmäÿige Teilnahme an der Übung - 20% der Punkte Es werden die besten (max. 70%) Übungsfragebögen bewertet. Dabei wird auch nicht-teilnahme an einer Übung mitgezählt. Klausur - 80% der Punkte 3 von 30
Outline 1 Organisatorisches 2 Vorlesungsinhalt 3 Begrisklärung 4 Motivation 5 Abstraktion 6 Datenmodelle 7 Literaturangabe 4 von 30
Inhalt (laut Modulhandbuch) DBMS-Architektur, Datenbankentwurf (Normalformen und Entity-Relationship-Modell) das relationale Datenmodell und seine Operationen referenzielle Integrität und Transaktionen 5 von 30
Angestrebte Lernergebnisse (laut Modulhandbuch) Kenntnis der Grundeigenschaften und Elemente von relationalen Datenbanken (relationales Datenmodell einschl. Operationen, Eigenschaften von Transaktionen, Indextabellen) gesicherte Kenntnisse zum Datenbankentwurf (Normalformen, Entity-Relationship-Modell) Verständnis von verschiedenen Arten von Datendarstellungen 6 von 30
Inhalt der Vorlesung Einführung DBMS-Architektur Datenmodellierung Entity-Relationship Model Grundlagen des relationales Datenmodel Relationale Datenbanksprache: SQL Relationale Entwurftheorie und Normalformen Datenintegrität Transaktionen Indextabellen 7 von 30
Literatur A. Kemper, A. Eickler: Datenbanksysteme Eine Einführung. Oldenbourg Verlag, 2009. 7. Auage. A. Kemper, M. Wimmer: Übungsbuch Datenbanksysteme Oldenbourg Verlag, 2. Auage, 2009. A. Silberschatz, H. F. Korth und S. Sudarshan Database System Concepts, 4. Auage, McGraw-Hill Book Co., 2002. R. Elmasri, S.B. Navathe: Fundamentals of Database Systems, Benjamin Cummings, Redwood City, Ca, USA, 2. Auage, 1994 R. Ramakrishnan, J. Gehrke: Database Management Systems, 3. Auage, 2003. G. Vossen : Datenmodelle, Datenbanksprachen und Datenbank-Management-Systeme. Oldenbourg, 2001. 8 von 30
Outline 1 Organisatorisches 2 Vorlesungsinhalt 3 Begrisklärung 4 Motivation 5 Abstraktion 6 Datenmodelle 7 Literaturangabe 9 von 30
Daten, Information, Wissen (keine allgemeingültige Denition!) 10 von 30
Daten, Information, Wissen (keine allgemeingültige Denition!) Daten - Syntaktische Ebene Zeichen, z.b. a-z, A-Z, 0-9 Zeichenvorrat + Syntax(Regeln für erlaubte Zeichenkombinationen) = Daten z.b. Datenelement vom Typ Integer: 181 10 von 30
Daten, Information, Wissen (keine allgemeingültige Denition!) Daten - Syntaktische Ebene Zeichen, z.b. a-z, A-Z, 0-9 Zeichenvorrat + Syntax(Regeln für erlaubte Zeichenkombinationen) = Daten z.b. Datenelement vom Typ Integer: 181 Information - Semantische Ebene Bedeutung verschiedener Datenelemente, d.h. Interpretation der Datenelemente 181 ist die Gröÿe von Herrn Mustermann in cm 10 von 30
Daten, Information, Wissen (keine allgemeingültige Denition!) Daten - Syntaktische Ebene Zeichen, z.b. a-z, A-Z, 0-9 Zeichenvorrat + Syntax(Regeln für erlaubte Zeichenkombinationen) = Daten z.b. Datenelement vom Typ Integer: 181 Information - Semantische Ebene Bedeutung verschiedener Datenelemente, d.h. Interpretation der Datenelemente 181 ist die Gröÿe von Herrn Mustermann in cm Wissen - pragmatische Ebene kontextspezische Anwendung von Information (und Daten) für einen Zweck Berechnen der Durchschnittsgröÿe zur Konstruktion einer Parkbank 10 von 30
Datenbankverwaltungssystem DBMS Denition: Datenbankverwaltungssystem (data base management system: DBMS) 1 Die Gesamtheit der Programme zum Zugri auf die Datenbasis, zur Kontrolle der Konsistenz und zur Modikation der Daten, wird als Datenbankverwaltungssystem (DBMS) bezeichnet. 1 nach Kemper, Eickler: Datenbanksysteme 2 nach Informatik-Handbuch: Rechenberger, Pomberger 11 von 30
Datenbankverwaltungssystem DBMS Denition: Datenbankverwaltungssystem (data base management system: DBMS) 1 Die Gesamtheit der Programme zum Zugri auf die Datenbasis, zur Kontrolle der Konsistenz und zur Modikation der Daten, wird als Datenbankverwaltungssystem (DBMS) bezeichnet. Denition: Datenbankverwaltungssystem (data base management system: DBMS) 2 DBMS sind Softwareprodukte für die dauerhafte, integre und anwendungsunabhängige Speicherung und Verwaltung sowie die bequeme Verwendung von groÿen, mehrfachbenutzbaren integrierten Datenbasen. 1 nach Kemper, Eickler: Datenbanksysteme 2 nach Informatik-Handbuch: Rechenberger, Pomberger 11 von 30
Datenbasis Denition: Datenbasis 3 Eine Datenbasis ist eine Menge von Daten, die aus Sicht der Systembetreiber als zusammengehörig betrachtet werden. 3 nach Informatik-Handbuch: Rechenberger, Pomberger 12 von 30
Datenbank Denition: Datenbank 4 Die Datenbasis angereichert um weitere Daten, die das DBMS zur Erfüllung seiner Aufgabe benötigt, bilden eine Datenbank (DB). 4 nach Informatik-Handbuch: Rechenberger, Pomberger 13 von 30
Datenbanksystem Denition: Datenbanksystem 5 Ein DBMS einschlieÿlich einer oder mehrerer Datenbanken nennt man ein Datenbanksystem (DBS). Im täglichen Sprachgebrach werden die Begrie DBMS und DBS oft synonym (=bedeutungsgleich) verwendet. 5 nach Informatik-Handbuch: Rechenberger, Pomberger 14 von 30
DB - DBMS - DBS 15 von 30
Outline 1 Organisatorisches 2 Vorlesungsinhalt 3 Begrisklärung 4 Motivation 5 Abstraktion 6 Datenmodelle 7 Literaturangabe 16 von 30
Warum Datenbanken? Typische Probleme bei Informationsverarbeitung ohne DBMS, z.b. Daten direkt im Dateisystem Redundanz und Inkonsistenz Beschränkte Zugrismöglichkeiten, keine Verknüpfung der Daten Probleme beim Mehrbenutzerbetrieb Verlust von Daten Integritätsverletzung Sicherheitsprobleme / Datenschutzprobleme hohe Entwicklungskosten für Anwendungsprogramme 17 von 30
Outline 1 Organisatorisches 2 Vorlesungsinhalt 3 Begrisklärung 4 Motivation 5 Abstraktion 6 Datenmodelle 7 Literaturangabe 18 von 30
Abstraktionsebenen eines Datenbanksystems Drei Abstraktionsebenen: physische Ebene, d.h. wie die Daten gespeichert sind. logische Ebene, d.h. welche Daten und wie logisch organisiert: Datenbankschema Sichten: Teilmenge der Gesamtdaten für einzelne Anwender(gruppen) 19 von 30
Datenunabhängigkeit Schichten gewähleisten einen bestimmten Grad der Datenunabhängigkeit Physische Datenunabhängigkeit Logische Datenunabhängigkeit 20 von 30
Outline 1 Organisatorisches 2 Vorlesungsinhalt 3 Begrisklärung 4 Motivation 5 Abstraktion 6 Datenmodelle 7 Literaturangabe 21 von 30
Übersicht: Modellierung Ausgangspunkt reale (oder ktive) Welt wirtschaftliche oder technische Problemstellung Analyse Identikation des Ausschnittes der Welt, der für die Problemstellung relevant ist (konzeptionelle) Modellierung des Ausschnitts Modellierungssprachen - graphische Darstellung Beispiele: Entity-Relationship Modell, UML 22 von 30
Übersicht: Vorgehen Abbildung der Modellierung in das relationale Modell technisch sind dies Tabellen also: welche Tabellen es gibt und aus welchen Spalten (inkl. Namen der Spalten) bestehen diese: Dies entspricht dem Datenbank-Schema allgemeiner mittels der Daten Denition Language DDL Füllen des Datenbankschemas mit den Daten der realen Welt eigentliche Datenmanipulationssprache DML Nutzen der Daten mittels einer Anfragesprache (Teil der Datenmanipulationssprache) Anfragen (Queries) Erstellen von Reports 23 von 30
Datenmodellierung 24 von 30
Modellierung einer kleinen Beispielanwendung 25 von 30
Logische Datenmodelle / Typen von DBMS Netzwerkmodell Hierarchisches Datenmodell Relationales Datenmodell XML Schema Objektorientiertes Datenmodell Objektrelationales Schema Deduktives Datenmodell Semantische Datenmodelle (wie RDF/OWL, Topicmaps) Key-Value Stores Spaltendatenbanken Dokument Datenbanken (schema-frei) Graph-Datenbanken 26 von 30
Das relationale Datenmodell Studenten MatrNr Name 26120 Fichte 25403 Jonas...... hören MatrNr VorlNr 25403 5022 26120 5001...... VorlNr Vorlesungen Titel 5001 Grundzüge 5022 Glaube und Wissen...... select Name from Studenten, hören, Vorlesungen where Studenten.MatrNr = hören.matrnr and hören.vorlnr = Vorlesungen.VorlNr and Vorlesungen.Titel = 'Grundzüge'; update Vorlesungen set Titel = 'Grundzüge der Logik' where VorlNr = 5001; 27 von 30
Architekturübersicht eines DBMS 28 von 30
Outline 1 Organisatorisches 2 Vorlesungsinhalt 3 Begrisklärung 4 Motivation 5 Abstraktion 6 Datenmodelle 7 Literaturangabe 29 von 30
Literaturangabe A. Kemper, A. Eickler: Datenbanksysteme Eine Einführung. Oldenbourg Verlag, 2009. 7. Auage. Rechenberger, Pomberger: Informatik-Handbuch. Hanser Verlag, 2002. 3. Auage. 30 von 30