Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Vorlesung #2 Das relationale Modell (Teil 1)

Ähnliche Präsentationen


Präsentation zum Thema: "Vorlesung #2 Das relationale Modell (Teil 1)"—  Präsentation transkript:

1 Vorlesung #2 Das relationale Modell (Teil 1)

2 „Fahrplan“ Feedback Vorlesung#1 Vorlesung#1 abschliessen
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 © Bojan Milijaš,

3 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 © Bojan Milijaš,

4 Objektorientiertes Schema
Einordnung Miniwelt UML-Klassen ER-Diagramm 1. Objektorientiertes Schema Relationales Schema Netzwerk- Schema 2. Index(e) Cluster partitionierte Tabelle(n) DBMS -Speicherparameter 3. © Bojan Milijaš,

5 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) © Bojan Milijaš,

6 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) © Bojan Milijaš,

7 Orientierung Postrelationale Modelle
Objekt-orientiertes Modell Objekt-relationales Modell (evolutionär) Deduktives Modell (Datalog) Verteilte Datenbanken Web-Datenbanken (XML, XPath, XQuery) In-Memory Datenbanken NoSQL Datenbanken werden nach dem relationalen Modell kurz vorgestellt © Bojan Milijaš,

8 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 © Bojan Milijaš,

9 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.) ... © Bojan Milijaš,

10 Mathematische Definition
Gegeben sind n atomare, nicht notwendigerweise unterschiedliche Wertebereiche (Domänen) D1, D2, ... , Dn Beispiel: string, string, float, ... , integer Relation R ist die Teilmenge des kartesischen Produkts der Domänen R  D1 x ... x Dn Beispiel: Vorlesungen  integer x string x integer Ein Tupel ist ein Element aus R t  R Beispiel: t = (4052, „Logik“, 4) © Bojan Milijaš,

11 Relationenschema legt die Struktur der gespeicherten Daten fest
Beispiel: Vorlesungen: {[VorlNr:integer,Titel:string,SWS:integer]} Ausprägung: der aktuelle Zustand der Datenbasis Vorlesungen VorlNr Titel SWS 5001 Grundzüge 4 5041 Ethik 3 ... © Bojan Milijaš,

12 Relationenschema (2) Relation (Tabelle, table) Vorlesungen VorlNr
Titel SWS 5001 Grundzüge 4 5041 Ethik 3 ... Tupel (Zeile, row) Attribut (Spalte, column) © Bojan Milijaš,

13 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) = {A1, ... , An} R  dom(A1) x ... x dom(An) Primärschlüssel – identifiziert eindeutig die Relation, wird unterstrichen © Bojan Milijaš,

14 © Bojan Milijaš,

15 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 © Bojan Milijaš,

16 Relationale Algebra Operatoren (1)
 Selektion  Projektion x Kreuzprodukt A Join (Verbund)  Umbenennung  Mengendifferenz  Division  Vereinigung Mengendurchschnitt © Bojan Milijaš,

17 Relationale Algebra Operatoren (2)
F Semi-Join (linker) E Semi-Join (rechter) C linker äußerer Join D rechter äußerer Join © Bojan Milijaš,

18 © Bojan Milijaš,

19 © Bojan Milijaš,

20 Vorlesung #2 Ende


Herunterladen ppt "Vorlesung #2 Das relationale Modell (Teil 1)"

Ähnliche Präsentationen


Google-Anzeigen