Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Relationale und Objekt-relationale Datenbanken Daten- und Informationsmodellierung Relationales Datenmodell SQL Objekt-relationale Datenbanken Vorlesung.

Ähnliche Präsentationen


Präsentation zum Thema: "Relationale und Objekt-relationale Datenbanken Daten- und Informationsmodellierung Relationales Datenmodell SQL Objekt-relationale Datenbanken Vorlesung."—  Präsentation transkript:

1 Relationale und Objekt-relationale Datenbanken Daten- und Informationsmodellierung Relationales Datenmodell SQL Objekt-relationale Datenbanken Vorlesung Grundlagen der Datenbanken von Prof. Dr. Staab und Dr. Sizov Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung1

2 Prof. Dr. Steffen Staab Dr. Dr. Sergej Sizov ISWeb – Information Systems & Semantic Web Kapitel 2 Daten- und Informationsmodellierung

3 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung3 Informationsmodellierung Darstellungselemente + Regeln: -Objekte und Beziehungen (Relationships) -Klassen von Objekten / Beziehungen -Eigenschaften (Attribute) Informationen über Objekte und Beziehungen nur wenn: -relevant -unterscheidbar und identifizierbar, selektiv beschreibbar Zusammenhänge Sachverhalte Gegenstände Informationen Personen Tatsachen Formalisierung Objekte Beziehungen Attribute Vorgänge, Veränderungen.. " Miniwelt "

4 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung4 Abstraktionskonzepte Informations- und Datenmodelle basieren auf drei grundlegenden Abstraktionskonzepten: Klassifikation: fasst Objekte (Entities, Instanzen) mit gemeinsamen Eigenschaften zu einem neuen (Mengen-) Objekt (Entity-Menge, Klasse, Objekttyp) zusammen. – Instanzen/Objekten einer Klasse unterliegen gleicher Struktur (Attribute), gleichen Integritätsbedingungen, gleichen Operationen – mathematisch: Mengenbildung Aggregation: Zusammenfassung potentiell unterschiedlicher Teilobjekte (Komponenten) zu neuem Objekt – mathematisch: Bildung von kartesischen Produkten Generalisierung: Teilmengenbeziehungen zwischen Elementen verschiedener Klassen – mathematisch: Bildung von Potenzmengen (bzw. Teilmengen) – wesentlich: Vererbung von Eigenschaften an Teilmengen

5 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung5 Entity/Relationship-Modellierung (ERM) Konzepte: Entity-Mengen Beziehungsmengen (Relationship-Mengen) Attribute Wertebereiche Primärschlüssel unterstützt die Abstraktionskonzepte der Klassifikation und Aggregation graphische Darstellung durch Diagramme zahlreiche Erweiterungsvorschläge entwickelt von P. P. Chen (ACM Transactions on Database Systems 1976) Studenten Vorlesungen hören VorlNrTitelSWS MatrNrNameSemester Hörer Lehrveranstaltung

6 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung6 Schlüssel Minimale Menge von identifizierenden Attributen {Matrikelnummer} {Vorname, Nachname, Geburtsdatum, Geburtsort} Oft künstlicher Schlüssel bestehend aus einem Attribut (Vorlesungsnummer, Kundennummer, Personalausweißnummer,…) Mehrere Schlüssel möglich; dann Auswahl eines Primärschlüssel

7 Prof. Dr. Steffen Staab Dr. Dr. Sergej Sizov ISWeb – Information Systems & Semantic Web Kapitel 3 Grundlagen des relationalen Datenmodells

8 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung8 Relationales Datenmodell Seien D 1, D 2,..., D n Domänen (~ Wertebereiche) Relation: R D 1 x... x D n Beispiel: Telefonbuch string x string x integer Tupel: t R Beispiel: t = (Mickey Mouse, Main Street, 4711) Schema: legt die Struktur der gespeicherten Daten fest Beispiel: Telefonbuch: {[Name: string, Adresse: string, Telefon#:integer]} Darstellungsmöglichkeit für R: n-spaltige Tabelle (Grad der Relation: n)

9 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung9 Telefonbuch NameStraßeTelefon# Mickey MouseMain Street4711 Minnie MouseBroadway94725 Donald DuckBroadway95672 Ausprägung: der aktuelle Zustand der Datenbasis Kardinalität: Anzahl der Sätze (Tupel) in der Datenbasis Schlüssel: minimale Menge von Attributen, deren Werte ein Tupel eindeutig identifizieren Primärschlüssel: wird unterstrichen Einer der Schlüsselkandidaten wird als Primärschlüssel ausgewählt Hat eine besondere Bedeutung bei der Referenzierung von Tupeln

10 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung10 RM: Grundregeln Jede Zeile (Tupel) ist eindeutig und beschreibt ein Objekt (Entity) der Miniwelt Die Ordnung der Zeilen ist ohne Bedeutung Die Ordnung der Spalten ist ohne Bedeutung, da sie eindeutigen Namen (Attributnamen) tragen Jeder Datenwert innerhalb einer Relation ist ein atomares Datenelement Alle für Benutzer relevanten Informationen sind ausschließlich durch Datenwerte ausgedrückt

11 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells11 Assoziationen N:1 1.Verwendung von drei Relationen Professoren ( PersNr, Name, Rang, Raum ) Vorlesungen ( VorlNr, Titel, SWS ) lesen ( VorlNr, PersNr ) 2.Besser: Verwendung von zwei Relationen Professoren ( PersNr, Name, Rang, Raum ) Vorlesungen ( VorlNr, Titel, SWS, PersNr ) Regel: Bei n:1 Assoziationen können Relationen mit gleichem Schlüssel zusammengefasst werden - aber nur diese und keine anderen! lesen ProfessorenVorlesungen 1 * PersNr Name Rang Raum VorlNr Titel SWS

12 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung12 Ausprägung von Professoren und Vorlesungen Professoren PersNrNameRangRaum 2125SokratesC RusselC KopernikusC PopperC AugustinusC CurieC KantC47 Vorlesungen VorlNrTitelSWSGelesen Von 5001Grundzüge Ethik Erkenntnistheorie Mäeutik Logik Wissenschaftstheorie Bioethik Der Wiener Kreis Glaube und Wissen Die 3 Kritiken42137 lesen ProfessorenVorlesungen 1 *

13 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung13 Vorsicht: So geht es NICHT Professoren PersNrNameRangRaumliest 2125SokratesC SokratesC SokratesC AugustinusC CurieC436?? Vorlesungen VorlNrTitelSWS 5001Grundzüge4 5041Ethik4 5043Erkenntnistheorie3 5049Mäeutik2 4052Logik4 5052Wissenschaftstheorie3 5216Bioethik2 5259Der Wiener Kreis2 5022Glaube und Wissen2 4630Die 3 Kritiken4 lesen ProfessorenVorlesungen 1 *

14 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung14 Vorsicht: So geht es NICHT: Folgen Anomalien Update-Anomalie: Was passiert wenn Sokrates umzieht Lösch-Anomalie: Was passiert wenn Glaube und Wissen wegfällt Einfügeanomalie: Curie ist neu und liest noch keine Vorlesungen Professoren PersNrNameRangRaumliest 2125SokratesC SokratesC SokratesC AugustinusC CurieC436?? Vorlesungen VorlNrTitelSWS 5001Grundzüge4 5041Ethik4 5043Erkenntnistheorie3 5049Mäeutik2 4052Logik4 5052Wissenschaftstheorie3 5216Bioethik2 5259Der Wiener Kreis2 5022Glaube und Wissen2 4630Die 3 Kritiken4

15 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung15 N:M Assoziationen Verwendung von drei Relationen Studenten ( MatrNr, Name, Semester ) Vorlesungen ( VorlNr, Titel, SWS ) hören ( VorlNr, MatrNr ) Regel: Eine n:m-Assoziation muss durch eine eigene Relation dargestellt werden. Die Primärschlüssel der zugehörigen Klassen treten als Fremdschlüssel auf. hören StudentenVorlesungen ** MatrNr Name Semester VorlNr Titel SWS

16 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung16 Ausprägung der Beziehung hören Studenten MatrNr hören MatrNrVorlNr Vorlesungen VorlNr hören StudentenVorlesungen ** MatrNr Name Semester VorlNr Titel SWS

17 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung17 Eine Klasse mit N:M Assoziation Darstellungsmöglichkeit: Vorlesung (VorlNr, Titel, SWS) Voraussetzungen (NeueVorlNr, AlteVorlNr, obligatorisch) Regel: Die n:m-Assoziation muss auch hier durch eine eigene Relation dargestellt werden. Primärschlüssel der zugehörigen Klasse soll auch als Fremdschlüssel auftreten. Vorlesung Voraussetzungen * * obligatorisch VorlNr Titel SWS

18 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells18 Eine Klasse mit 1:1 Assoziation Darstellungsmöglichkeit: Person (PNr, Name, Geburtsdatum) Ehe (PNr, Gatte, Seit) Verwendung von einer Relation: Person (PNr_Ehemann, Name_Ehemann, GD_Ehemann, PNr_Ehefrau, Name_Ehefrau, GD_Ehefrau, Seit) Alternative (wie bei N:1 Relationen): Person (PNr, Name, Geburtsdatum, PNr_Gatte, Seit) Person Ehe 1 1 Seit PNr Name Geburtsdatum

19 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells19 N-stellige Assoziationen Professoren ( PersNr, Name, Rang, Raum ) Studenten ( MatrNr, Name, Semester ) Seminarthemen ( Titel ) Belegung ( MatrNr, PersNr, Titel, Vortragsdatum, Raum ).. weitere Alternativen möglich StudentenProfessoren Seminarthemen * Belegung Vortragsdatum Raum MatrNr Name Semester PersNr Name Rang Raum Titel

20 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells20 Schwache Entitymengen Schwache Entitäten sind Entitäten, die von einer anderen, übergeordneten Entität abhängig sind. Sie sind oft nur in Kombination mit dem Schlüssel der übergeordneten Entität eindeutig identifizierbar. Beziehung zwischen "starkem" und schwachem Typ ist immer 1:* (oder 1:1 in seltenen Fällen) Warum kann das keine * : * Beziehung sein? RaumNr ist nur innerhalb eines Gebäudes eindeutig Schlüssel ist: GebNr und RaumNr Gebäude GebNr Höhe Räume RaumNr Größe

21 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells21 Generalisierung RM sieht keine Unterstützung der Abstraktionskonzepte vor keine Maßnahmen zur Vererbung (von Struktur, Integritätsbedingungen, Operationen) Simulation der Generalisierung und Aggregation eingeschränkt möglich Generalisierungsbeispiel: Wiss. Mitarbeiter TV-L Gruppe Techniker Beamte ID Name Diplom Spezialgebiet Erfahrung Angestellte Uni-Angehörige

22 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells22 Generalisierung in RA Lösungsmöglichkeit 1: vertikale Partitionierung jede Instanz wird entsprechend der Klassenattribute in der IS-A- Hierarchie zerlegt und in Teilen in den zugehörigen Klassen (Relationen) gespeichert. nur das ID-Attribut wird dupliziert Uni-Angehörige (ID, Name) Angestellte (ID, TV_L_Gruppe) Techniker (ID, Erfahrung) WissMA (ID, Diplom, Spezialgebiet) Beamte (ID, … ) Eigenschaften geringfügig erhöhte Speicherungskosten, aber hohe Aufsuch- und Aktualisierungkosten Integritätsbedingungen: TECHNIKER.ID ANGESTELLTE.ID, usw. Instanzenzugriff erfordert implizite oder explizite Verbundoperationen :: Problembeispiel: Finde alle TECHNIKER-Daten

23 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells23 Generalisierung in RA (1) Lösungsmöglichkeit 2: horizontale Partitionierung jede Instanz ist genau einmal und vollständig in ihrer Hausklasse gespeichert. keinerlei Redundanz Uni-Angehörige (ID, Name) Angestellte (ID, Name, BAT) Techniker (ID, Erfahrung, Name, BAT) WissMA (ID, Diplom, Spezialgebiet, Name, BAT) Beamte (ID, … ) Eigenschaften niedrige Speicherungskosten und keine Änderungsanomalien Eindeutigkeit von ID zwischen Relationen aufwendiger zu überwachen Retrieval kann rekursives Suchen in Unterklassen erfordern. :: Problembeispiel: Finde alle ANGESTELLTE

24 Grundlagen der Datenbanken, WS 08/09Kapitel 3: Grundlagen des Relationalen Modells24 Generalisierung in RA (3) Lösungsmöglichkeit 3: volle Redundanz eine Instanz wird wiederholt in jeder Klasse, zu der sie gehört, gespeichert. sie besitzt dabei die Werte der Attribute, die sie geerbt hat, zusammen mit den Werten der Attribute der Klasse Uni-Angehörige (ID, Name) Angestellte (ID, Name, BAT) Techniker (ID, Erfahrung, Name, BAT) WissMA (ID, Diplom, Spezialgebiet, Name, BAT) Beamte (ID, … ) Eigenschaften höherer Speicherplatzbedarf und Auftreten von Änderungsanomalien. einfaches Retrieval, da nur die Zielklasse (z. B. ANGESTELLTE) aufgesucht werden muss

25 25 Folgendes Buch liegt der Vorlesung zugrunde: Alfons Kemper und Andre Eickler Oldenbourg Verlag, München, aktualisierte und erweiterte Auflage Die Folien wurden weitgehend von den Autoren übernommen. (Siehe auch )

26 26 Literatur A. Kemper, A. Eickler Datenbanksysteme – Eine Einführung, 6. aktualisierte und erweiterte Auflage. Oldenbourg Verlag, A. Silberschatz, H. F. Korth und S. Sudarshan Database System Concepts, 3. Auflage, McGraw-Hill Book Co., R. Elmasri, S.B. Navathe: Fundamentals of Database Systems, Benjamin Cummings, Redwool City, Ca, USA, 2. Auflage, 1994 G. Vossen : Datenmodelle, Datenbanksprachen und Datenbank-Management- Systeme. Addison Wesley, 1994.

27 27 D. Maier: The Theory of Relational Databases. Computer Science Press S. M. Lang, P.C. Lockemann: Datenbankeinsatz. Springer Verlage, C. Batini, S. Ceri, S.B. Navathe: Conceptual Database Design, Benjamin Cummings, Redwood City, Ca, USA, C. J. Date: An Introduction to Database Systems. McGraw-Hill, 6. Aufl., J.D. Ullmann, J. Widom: A First Course in Database Systems, McGraw Hill, 1997.

28 28 A. Kemper, G. Moerkotte: Object-Oriented Database Management: Applications in Engineering and Computer Science, Prentice Hall, 1994 E. Rahm: Mehrrechner-Datenbanksysteme. Addison-Wesley, P. Dadam: Verteilte Datenbanken und Client/Server Systeme. Springer Verlag, 1996

29 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung29

30 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung30 Schwache, existenzabhängige Entities Schwache Entitäten sind Entitäten, die von einer anderen, übergeordneten Entität abhängig sind. Sie sind oft nur in Kombination mit dem Schlüssel der übergeordneten Entität eindeutig identifizierbar. Gebäude liegt_in Räume HöheGebNr Größe RaumNr 1 N

31 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung31 Schwache, existenzabhängige Entities Beziehung zwischen "starken" und schwachem Typ ist immer 1:N (oder 1:1 in seltenen Fällen) Warum kann das keine N:M-Beziehung sein? RaumNr ist nur innerhalb eines Gebäudes eindeutig Schlüssel ist: GebNr und RaumNr Gebäude liegt_in Räume HöheGebNr Größe RaumNr 1 N

32 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung32 Relationale Modellierung schwacher Entitytypen Studenten ablegen Prüfungen 1 N Note PrüfTeil MatrNr Vorlesungen umfassen VorlNr abhalten Professoren PersNr NN MM Prüfungen: {[MatrNr: integer, PrüfTeil: string, Note: integer]} umfassen: {[MatrNr: integer, PrüfTeil: string, VorlNr: integer]} abhalten: {[MatrNr: integer, PrüfTeil: string, PersNr: integer]}

33 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung33 Man beachte, dass in diesem Fall der (global eindeutige) Schlüssel der Relation Prüfung nämlich MatrNr und PrüfTeil als Fremdschlüssel in die Relationen umfassen und abhalten übernommen werden muß. Fremdschlüssel auf ein schwaches Entity

34 Grundlagen der Datenbanken, WS 08/09Kapitel 2: Daten- und Informationsmodellierung34 Relationale Modellierung der Generalisierung Fachgebiet Assistenten Professoren RaumRang is_a Angestellte PersNrName Angestellte: {[PersNr, Name]} Professoren: {[PersNr, Rang, Raum]} Assistenten: {[PersNr, Fachgebiet]}


Herunterladen ppt "Relationale und Objekt-relationale Datenbanken Daten- und Informationsmodellierung Relationales Datenmodell SQL Objekt-relationale Datenbanken Vorlesung."

Ähnliche Präsentationen


Google-Anzeigen