Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Ortrun Kerker Geändert vor über 10 Jahren
1
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 Vorlesung #2 Das relationale Modell (Teil 1)
2
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Fahrplan Feedback Vorlesung#1 Das relationale Modell Einordnung (wir überspringen die Modellierung, das kommt im 4. Semester Datenmanagement) Definition, Relationenschema, Ausprägung Relationale Abfrage-Sprachen (relationale Algebra, Kalkül) Fazit und Ausblick Vorlesung #3
3
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Organisatorisches Übungsaufgaben vertiefen den Vorlesungsstoff und beziehen sich nichts auf das Praktikum Praktikum Praktikumsaufgaben sind von Vorlesungen und Übungen entkoppelt. Heute zeigen wir anhand von interner SQL Verarbeitung Bedeutung der relationalen Algebra Diejenigen, die sich mit SQL auskennen können schon heute mit dem Praktikumblatt 1 anfangen Kemper-Tabellen sollen hochgeladen werden
4
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Einordnung Miniwelt Relationales Schema Objektorientiertes Schema Netzwerk- Schema UML-Klassen ER-Diagramm Index(e) Cluster partitionierte Tabelle(n) DBMS -Speicherparameter 3. 1. 2.
5
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Prerelationale Systeme (1) Netzwerk-Modell Sieht aus wie ein Netzwerk (beliebiger gerichteter Graph) bestehend aus: Satztypen (record types) entsprechen den Entitäten Sammlungstypen (set types) entsprechen den Relationen zusätzlich: Anker (owner), Glieder (member) Hilfskonstrukte: link records, dummies Verbindungen sind wie bei verketteten Listen durch Zeiger (Pointer) implementiert, die stets beim Informationszugriff benutzt und gegebenenfalls auch verändert werden (-) Keine Rekursion, keine Datenunabhängigkeit, komplizierte Abfragen UDS (Siemens), IDMS (CA)
6
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Prerelationale Systeme (2) Hierarchisches Modell Spezialfall des Netzwerk-Modells, sieht aus wie ein Baum und nicht wie beliebiger Graph Nachfolger, die mehrere Vorgänger haben, werden durch das Kopieren dem jeweiligen Vorgänger exklusiv zugeordnet, Graph mehrere Bäume Jeder Datensatz über einen eindeutigen Zugriffspfad erreichbar, Redundanzvermeidung durch Implementierung zusätzlicher Zeiger (-) schlecht für nicht hierarchische Zusammenhänge wegen unnötiger Redundanz, keine Datenunabhängigkeit, komplizierte Abfragen IMS (IBM)
7
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Orientierung Postrelationale Modelle Objekt-orientiertes Modell Objekt-relationales Modell (evolutionär) Deduktives Modell (Datalog) Verteilte Datenbanken Web-Datenbanken (XML, XPath, XQuery) werden nach dem relationalen Modell kurz vorgestellt
8
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Orientierung Warum gerade relational? Sehr einfach und intuitiv Marktbeherrschend ca. 80% der bereits installierten Datenbank- Systeme sind relational (bzw. objekt-relational) ca. 90% der neu gekauften Datenbank-Systeme sind relational (bzw. objekt-relational) Relationales Model bzw. RDBMS hat aber auch Schwächen in bestimmten Anwendungsszenarios, die wir als Motivation für postrelationale DBMS vorstellen
9
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Geschichte Von Edward F. Codd 1970 vorgestellt: "A Relational Model of Data for Large Shared Data Banks." Erste Prototypen System R (IBM) Ingres (University of California, Berkeley unter Leitung von M. Stonebraker) Erste Produkte Oracle (Software Development Laboratories, später Relational Systems Inc., später Oracle Corporation) SQL/DS (IBM), Ingres (Relational Technology Inc.)...
10
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Mathematische Definition Gegeben sind n atomare, nicht notwendigerweise unterschiedliche Wertebereiche (Domänen) D 1, D 2,..., D n Beispiel: string, string, float,..., integer Relation R ist die Teilmenge des kartesischen Produkts der Domänen R D 1 x... x D n Beispiel: Vorlesungen integer x string x integer Ein Tupel ist ein Element aus R t R Beispiel: t = (4052, Logik, 4)
11
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Relationenschema legt die Struktur der gespeicherten Daten fest Beispiel: Vorlesungen: {[VorlNr:integer,Titel:string,SWS:integer]} Ausprägung: der aktuelle Zustand der Datenbasis Vorlesungen VorlNrTitelSWS 5001Grundzüge4 5041Ethik3...
12
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Relationenschema (2) Vorlesungen VorlNrTitelSWS 5001Grundzüge4 5041Ethik3... Relation (Tabelle, table) Tupel (Zeile, row) Attribut (Spalte, column)
13
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Relationenschema (3) Trennung zwischen Schema und Ausprägung sch(R) – Menge der Attribute einer Relation R – die aktuelle Ausprägung dom(A) – Domäne eines Attributs sch(R) = {A 1,..., A n } R dom(A 1 ) x... x dom(A n ) Primärschlüssel – identifiziert eindeutig die Relation, wird unterstrichen
14
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
15
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Relationale Abfragesprachen Man braucht neben der Strukturbeschreibung (relationales Datenbankschema) auch eine Sprache, um die Informationen aus der Datenbank gemäß vorgegeben Kriterien extrahieren zu können Relationale Algebra beinhaltet einen relational-algebraischen Ausdruck wird bei der Anfragenbearbeitung benutzt (wie werden die Daten selektiert) Relationenkalkül Rein deklarativ (was und nicht wie selektiert wird) Tupelkalkül Domänenkalkül
16
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Relationale Algebra Operatoren (1) Selektion Projektion x Kreuzprodukt A Join (Verbund) Umbenennung Mengendifferenz Division Vereinigung Mengendurchschnitt
17
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012 Relationale Algebra Operatoren (2) F Semi-Join (linker) E Semi-Join (rechter) C linker äußerer Join D rechter äußerer Join
18
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
19
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
20
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
21
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
22
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
23
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
24
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
25
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 © Bojan Milijaš, 12.10.2012
26
WS 2012/13 Datenbanksysteme Fr 15:15 – 16:45 R 2.007 Vorlesung #2 Ende
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.