270 likes | 439 Views
Universität Paderborn. Datenbanken, Datenbanksysteme & Zugriffsschichten für Daten Konstantin Steinbrecher. Einführung. Anwendung 1. Anwendung m. DBS. DBMS. Datenbank 1. Datenbank 2. Datenbank n. DBMS stehlt zur Verfügung:. DDL & DML. Datenbankschema -- Datenbankausprägung.
E N D
Universität Paderborn Datenbanken, Datenbanksysteme & Zugriffsschichten für DatenKonstantin Steinbrecher
Einführung Anwendung 1 Anwendung m DBS DBMS Datenbank 1 Datenbank 2 Datenbank n DBMS stehlt zur Verfügung: DDL & DML Datenbankschema -- Datenbankausprägung Zugriffscshicht 2
Gliederung • Datenbankmodelle: Relationale Datenbanken Objektrelationale Datenbanken Objektorientierte Datenbanken Multimediadatenbanken • Verteilte Datenbanken Fragmentierung Allokation • Kriterien von verteilten Datenbanksystemen • Komponenten-Datenbanksysteme • Multidatenbanksysteme Förderierte Datenbanksysteme • Midlleware Anforderungen 3
Datenbankmodelle: Relationale Datenbanken Relationenname Attribute R A1 ... An Relationenschema Attributwert Relation Tupel Definition des Datenbankschema Hinzufügen der Daten Verändern der Daten Löschen der Daten SQL 4
Datenbankmodelle: Objektrelationale Datenbanken Erweiterung der Relationale Datenbanksysteme durch objektorientierte Konzepte: • Mengenwertige Attribute • Benutzerdefinierte Datentypen • Referenzen • Objektidentität • Pfadausdrücke • Vererbung • Operationen • Datentypen für große Objekte 5
Datenbankmodelle: Objektorientierte Datenbanken Erweiterung der Programmiersprachen C++ und Smalltalk um Persistenzmodell Später kamm auch Java hinzu. Ein Objekt drei Bestandteilen: Identität eine systemweit eindeutige Objektidentität Typ legt die Struktur und das Verhalten des Objekts fest, Extension: Menge aller Objekte eines Typs Zustand beschreibenden durch Werte seiner Attribute ODMG Standard 6
Datenbankmodelle: Multimedia-Datenbanksysteme • Unterstützung von alphanumerischen Typen und Multimediadatentypen: • Text • Schwarz-weiße und farbige Standbilder • Grafische Objekte • Video-Daten • Audio-Daten Das Konzept der Objektorientierung: Typ = Struktur + Operationen 7
Verteilte Datenbanken Globales Schema Fragmentierungsschema Zuordnungsschema Lokales Schema Lokales Schema Lokales DBMS Lokales DBMS Lokale DB Lokale DB Station S1 Station S1 8
Verteilte Datenbanken Globales Schema Fragmentierungsschema Entwurf Zuordnungsschema Lokales Schema Lokales Schema Lokales DBMS Lokales DBMS Lokale DB Lokale DB Station S1 Station S1 8
Verteilte Datenbanken: Fragmentierung R R1 R2 R3 Horizontale Fragmentierung 9
Verteilte Datenbanken: Fragmentierung R R R1 R2 R3 R1 R2 k Horizontale Fragmentierung Vertikale Fragmentierung 9
Verteilte Datenbanken: Fragmentierung R R R1 R2 R3 R1 R2 k Horizontale Fragmentierung Vertikale Fragmentierung R R21 R22 R23 R1 R2 a) Kombinierte Fragmentierung: horizontale nach vertikale 9
Verteilte Datenbanken: Fragmentierung R R R1 R2 R3 R1 R2 k Horizontale Fragmentierung Vertikale Fragmentierung R R R21 R1 R22 R2 R23 R3 R1 R2 R31 R32 a) Kombinierte Fragmentierung: horizontale nach vertikale b) Kombinierte Fragmentierung: vertikale nach horizontale 9
Verteilte Datenbanken: Allokation Die Zuordnung der Fragmente auf Stationen der verteilten Datenbank Allokationsschema beschreibt die Zuordnung von Fragmenten zu Stationen Allokation mit Replikation: Fragmente werden repliziert mehreren Stationen zugeordnet 10
Kriterien von verteilten Datenbanksystemen Das verteilte Datenbanksystem ist eine Zusammensetzung aus mehreren verteilten (zentralisierten) Datenbanken und einem oder mehreren verteilten (zentralisierten) Datenbank-Management-Systemen. Verteilung Heterogenität Wegen der Differenz in DBMSsSemantische Heterogenität Autonomie Designautonomie, Kommunikationsautonomie,Ausführungsautonomie, Verbindungsautonomie 11
Komponenten-Datenbanksystemen Modulare Aufbau von Softwaresystemen 12
Komponenten-Datenbanksystemen Modulare Aufbau von Softwaresystemen Führt Komponenten-Datenbank-Management-System 12
Komponenten-Datenbanksystemen Modulare Aufbau von Softwaresystemen Führt Komponenten-Datenbank-Management-System Das DBMS besteht aus Komponenten, so daß die neue Komponenten hinzugefügt bzw. bereits existierende ausgetauscht werden können 12
Multidatenbanksysteme MDBS: eine Zusammensetzung von mehreren Komponenten-DBSs • Bzgl. Verteilung: • zentralisiertes Komponenten-DBS • verteiltes Komponenten-DBS • Bzgl. Heterogenität: • homogenes MDBS • heterogenes MDBS • Bzgl. Autonomie: • nicht förderierte Datenbanksysteme • förderierte Datenbanksysteme 13
Multidatenbanksysteme: Entwurf Globales Schema Fragmentierungsschema Zuordnungsschema Lokales Schema Lokales Schema Lokales DBMS Lokales DBMS Lokale DB Lokale DB Station S1 Station S1 14
Multidatenbanksysteme: Entwurf Globales Schema Fragmentierungsschema Entwurf Zuordnungsschema Lokales Schema Lokales Schema Lokales DBMS Lokales DBMS Lokale DB Lokale DB Station S1 Station S1 14
Förderierte Datenbanksysteme FDBS FDBMS Component-DBS n Component-DBS 1 Component-DBS 2 Component DBMS 1 (Zentralisiertes DBMS) Component DBMS 2 (Verteiltes DBMS) Component DBMS n (Andere FDBMS) Component Datenbank 2-1 Component Datenbank 2-2 Component Datenbank 1 15
Middleware (Java-) Anwendung Applikationsserver (mit Anwendungsdiensten) Datenbank Webbrowser Dateisystem Mobiles Gerät (Alt-) Anwendungen 16
Middleware: Anforderungen Netzwerkkommunikation Anwendungsprogramm Anwendungsschicht Darstellungsschicht Sitzungsschicht Transportschicht Vermittlungsschicht Sicherungsschicht Bitübertragungsschicht 17
Middleware: Anforderungen 2 Koordination Skalierbarkeit Heterogenität Synchron Asynchron Gruppenkommunikation Activation policies Threading policies Zugriffstransparenz Ortstransparenz Migrationstransparenz Replikationstransparenz Hardware Betriebssysteme Programmiersprachen Middleware selbst Zuverlässigkeit • Kommunikation zwischen zwei Komponenten • best effort • at-most-once • at-least-once • exactly-once • ACID-Eigenschaften • Atomarität • Konsistenz • Isolation • Dauerhaftigkeit • Im Bezug auf Gruppenkommunikation • k-reliability • time-outs • totally-ordered 18
Zusammenfassung Aktuelle Trend: bereits existierende DBSs zusammenzuführen Probleme: Verteilung, Heterogenität, Autonomie Lösungsansatz: Middleware, als Schicht zwischen Datenbanksystem und Anwendung Typen:Transaktionsmiddleware, Nachrichtenorientierte und Objekt- bzw. Komponentenorientierte Middleware In Praxis: Das Zusammenwachsen dieser Typen 19