1 / 46

Principles of Distributed Database Systems

Principles of Distributed Database Systems. ausgearbeitet von Rainer Steinlesberger 0026446. Einleitung. DDBS = Netzwerk von Computern (Sites) + Datenbank DDBS = Verteilung + Integration. +. Netzwerk. Datenbank. =. DDBS. Übersicht. Einleitung Was ist ein DDBS?

Download Presentation

Principles of Distributed Database Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Principles of Distributed Database Systems ausgearbeitet von Rainer Steinlesberger 0026446

  2. Einleitung DDBS = Netzwerk von Computern (Sites) + Datenbank DDBS = Verteilung + Integration + Netzwerk Datenbank = DDBS

  3. Übersicht • Einleitung • Was ist ein DDBS? • Überblick über relationale DBMS • Computer Netzwerke • Architektur von DBMS • Design einer verteilten Datenbank

  4. Geschichtlicher Rückblick • Ende der 60er Anfang der 70er ging man zunehmend dazu über Datenbanksysteme zu benutzen, um • die Datenunabhängigkeit der Anwendungsprogramme zu erhöhen, • transaktionsorientierte Verarbeitung zu ermöglichen, • Mehrbenutzerbetrieb zu realisieren, • sowie die Recovery-Funktionen zu verbessern. • Entstehen von Rechenzentren, wodurch die Betriebsorganisation zentralisiert wurde! • Die Datenmenge wuchsen immer weiter an  zusammengehörende Datenbestände wurden auf • verschiedene Datenbanken verteilt. • Dadurch entstanden Probleme mit der Konsistenthaltung der Daten. • In den 80iger und 90iger Jahren konnten durch Onlineanwendungen bislang getrennte • Anwendungen und Datenbestände zusammengeführt werden.

  5. Desshalb wurden integrierte verteilte Informationssysteme realisiert.

  6. Definition „A distributed database is a collection of multiple, logically interrelated databases distributed over a computer network. A distributed database management system is the software that permits the management of the DDBS and makes the distribution transparent to the users.“

  7. Zentrale Datenbankin einem Netzwerk Boston Edmonton Communication Network Paris San Francisco

  8. Verteilte Datenbankstruktur Edmonton Boston • Edmonton Angestellte • Paris Projekte • Edmont Projekte • Boston Angestellte • Paris Angestellte • Boston Projekte Communication Network San Francisco Paris • Paris Angestellte • Paris Projekte • Boston Angestellte • Boston Projekte • San Francisco Angestellte • San Francisco Projekte

  9. Transparentes Management • Datenunabhängigkeit • Netzwerk Transparenz • Replizierungs- bzw. Kopiertransparenz • Fragmentierungstransparenz

  10. Verbesserte Leistung • Ein DBMS teilt die Datenbank und erlaubt es den Daten somit sehr sehr nahe ihrem Ort, wo sie gebraucht werden, gespeichert zu werden. dies hat 2 Vorteile: • Seit jeder Knoten einen Teil der Daten bewältigt, ist der Kampf um Ressourcen wie CPU nicht mehr so wichtig wie in zentralisierten Datenbanken • Lokalisierung vermindert die Verzögerung bei entfernten Aufrufen

  11. Probleme • Verteiltes Datenbank-Design • Verteilte Suchprozesse • Verteiltes Verzeichnis-Management • Verteilte Konkurrenzkontrolle • Verteiltes Deadlock Management • Betriebssystem-Unterstützung • Heterogene Datenbanken

  12. 3. Relationale DBMS

  13. Relationen • Def.: in Beziehung stehend.... • Relationen sind 2dimensonale Tabellen von Werten

  14. 1. Normalform O------------------------------------------------------------------------------------------------O| Vorlesungen | Verantwortliche | Hörer | Bewert. | O------------------------------------------------------------------------------------------------O| Vorl.Nr. | Vorl.Name | Hörs. | Vorn. | Nachn. | Nr. | Vorn. | Nachn. | Matr.Nr. |Note |O------------------------------------------------------------------------------------------------O| || 3721 | Informatik | HS1 | 130 | Alan | Kurow | 102 | Fritz | Maier | 8610826 | 2 || 3721 | Informatik | HS1 | 130 | Alan | Kurow | 102 | Fritz | Müller | 8510721 | 5 || 3721 | Informatik | HS1 | 130 | Franz | Girke | 108 | Fritz | Maier | 8610826 | 3 || 3721 | Informatik | HS1 | 130 | Franz | Girke | 108 | Fritz | Müller | 8510721 | 4 || 3721 | Informatik | HS1 | 130 | Franz | Girke | 108 | Hans | Schuh | 8610933 | 1 O----------------------------------------------------------------------------------------------------O| Vorlesungen | Verantwortliche | Hörer | Bewert. |O----------------------------------------------------------------------------------------------------O| Vorl.Nr. | Vorl.Name | HS | HS-Gr. | Vorn. | Nachn. | Nr. | Vorn. | Nachn. | Matr.-Nr. | Note |O----------------------------------------------------------------------------------------------------O| 3721 | Informatik | HS1 | 130 | Alan | Kurow | 102 | Fritz | Maier | 8610826 | 2 3721 | Informatik | HS1 | 130 | Alan | Kurow | 102 | Fritz | Müller | 8510721 | 5 3721 | Informatik | HS1 | 130 | Franz | Girke | 108 | Fritz | Maier | 8610826 | 3 3721 | Informatik | HS1 | 130 | Franz | Girke | 108 | Fritz | Müller | 8510721 | 4 3721 | Informatik | HS1 | 130 | Franz | Girke | 108 | Hans | Schuh | 8610933 | 1

  15. 2. Normalform Die 2. Normalform vermeidet partielle funktionale Abhängigkeiten (diese bewirken Redundanzen). Eine partielle funktionale Abhängigkeit besteht, wenn Attribute (die nicht Schlüsselkandidaten sind) funktional schon von einem Teil des Schlüssels abhängen. Die zweite Normalform kann durch Elimination der abhängigen Attribute und Auslagerung in eine eigene Relation erreicht werden. Der Primärschlüssel besteht aus dem Attributetupel (Vorlesungsnummer, Verantwortlichennummer, Matrikelnummer) Wir zerlegen nun die Relation in vier Relationen, die dann in 2. Normalform sind.

  16. 2. Normalform • O------------------------------------O| • Hörsaal • V.-Nr. | V.-Name | Bez. | Größe | • O------------------------------------O| • | Informatik | HS1 | 130 | • 3722 | Informatik | HS4 | 140 | O-------------------------------------------O | V.-Nr. | Ver.-Nr. | Matr.-Nr. | Bewertung | O-------------------------------------------O| || 3721 | 102 | 8610826 | 2 || 3721 | 102 | 8610721 | 5 || 3721 | 108 | 8610826 | 3 || 3721 | 108 | 8610721 | 4 || 3721 | 108 | 8610933 | 1 O-------------------------------O | Ver.-Nr. | Vorname | Nachname |O------------------------------O 102 | Alan | Kurow | 108 | Franz | Girke | O----------------------------------O| Matr.-Nr. | H.-Vorn. | H.-Nachn. | O----------------------------------O| 8610826 | Fritz | Maier | 8610721 | Fritz | Müller | 8610933 | Hans | Schuh |

  17. 3. Normalform Eine Relation ist in dritter Normalform, wenn sie in 2. Normalform ist und es kein Attribut, welches nicht Teil des Schlüssels ist, gibt, welches transitiv vom Schlüssel abhängt. O-------------------------------------------O| V.-Nr. | V.-Name | Hörsaal-Bezeichnung | O-------------------------------------------O| • | Informatik | HS1 • | Informatik | HS4 || : | : | : | O-------------------------------------O| Hörsaal-Bezeichnung | Hörsaal-Größe | O-------------------------------------O| HS1 | 130 HS4 | 140 || : | : | • O------------------------------------O| • Hörsaal • V.-Nr. | V.-Name | Bez. | Größe | • O------------------------------------O| • | Informatik | HS1 | 130 | • 3722 | Informatik | HS4 | 140 |

  18. Relationale Daten Sprache • Relationale Algebra Verknüpft konstruktiv die vorhandenen Relationen durch Operatoren wie ∩,∪,... • Relationaler Kalkulus Beschreibt Eigenschaften des gewünschten Ergebnisses mit Hilfe einer Formel der Prädikatenlogik 1. Stufe unter Verwendung von ∀,∃,∨,∧,¬,...

  19. Relationale Algebra • Selection • Projection • Union • Set Difference • Cartesian Product • Intersection • ..........

  20. Einige Beispiele... • Selection Semester>10(Studenten) • ∏Name(Studenten) ...... Projektion • ∏Name (Studenten) ∪ ∏Name(Professoren) (2 Relationen mit gleichem Schema) • ∏Name (Studenten) -∏Name(Geprüft) (2 Relationen mit gleichem Schema)

  21. Relationaler Kalkulus • Tupelkalkül {t | F(t)} {p|p ∈ Professoren ٨ p.Alter = ‚35’} • Bereichskalkül {[v1, v2,..., vn] | P(v1, v2,..., vn)}

  22. 4. Netzwerk

  23. 4. Netzwerk

  24. Topologien im Überblick...

  25. OSI-Referenzmodell

  26. 5. Architektur von DBMS

  27. 5. Architektur von DBMS Die Idee hinter dem ANSI/SPARC Modell ist die Datenunabhängigkeit der Daten gegenüber Veränderungen der Speicherstrukturen. Das DBMS ist eine Schnittstelle zu den Daten.

  28. Architekturmodell

  29. Architektur von DBMS • Client - Server Architektur • Verteilte Datenbank Architektur • Multi Datenbank Architektur

  30. Client/Server Architektur Hier gibt es typischerweise einen zentralen Datenbank-Server und eine größere Anzahl vernetzter Arbeitsplatzrechner, die keine relevanten Daten speichern. Der Benutzer am Arbeitsplatzrechner sieht die volle Funktionalität des DBMS. Das System verhält sich wie ein zentrales Datenbanksystem, die Kommunikation ist für den Benutzer transparent

  31. Verteiltes Datenbanksystem • Hier gibt es mehrere Datenbankserver, wobei bestimmte Daten auf nur einem Rechner oder auch auf mehreren (replizit) gespeichert sein können. • Eine virtuelle Datenbank, deren Komponenten physisch in einer Anzahl unterschiedlicher, real existierender DBMS abgebildet werden. • Transaktionen können in diesem Fall über mehrere DBMS laufen. • Sammlung von Daten, die • Aufgrund gemeinsamer, verknüpfender Eigenschaften dem gleichen System angehören • Auf versch. Rechnern im Netzwerk verteilt sind • Wobei jeder Rechner seine eigene Datenbank besitzt • Autonom lokal Aufgaben abwickeln kann

  32. Verteiltes Datenbanksystem - gleichzeitige Benutzung der Rechenleistung mehrerer Rechner - Engpaß in zentralen Datenbanksystemen bei Zugriff auf die Daten wird vermieden, da die Daten verteilt sind (ggf. repliziert) - Daten werden von einem Datenbanksystem verwaltet - Verteilungstransparenz - Grundlage: 4-Ebenen-Schema-Architektur

  33. Verteiltes Datenbanksystem externes Schema 1 . . . externes Schema N konzeptionelles Schema lokales konzept. Schema lokales konzept. Schema lokales konzept. Schema . . . lokales internes Schema lokales internes Schema lokales internes Schema . . . 4 - Ebenen - Schema - Architektur

  34. Multidatenbanksystem - Ein MDBS ist ein Verbund von mehreren Datenbanksystemen. - Das Konzeptionelle Schema repräsentiert nur den Teil von Daten, den die lokalen DBMS teilen wollen. - Auf jedes DBS können lokale Anwendungen zugreifen. - Jedes DBS kann Daten enthalten, welche keine Beziehung zu Daten anderer DBS haben.

  35. Multidatenbanksystem GES GES GES LES LES LES LES LES LES GKS LKS 1 LKS n ... ... LIS 1 LIS n Modell mit globalem konzeptionellem Schema

  36. Multidatenbanksystem ES 1 ES 2 ES 3 MDB-Schicht Lokale System -Schicht LKS 1 LKS 2 LKS 3 LIS 1 LIS 2 LIS 3 Modell ohne globales konzeptionelles Schema

  37. 6. Design

  38. 6. Design Entwurfsmethodik • top-down: von den Anforderungen zum Systementwurf; geeignet für Neuentwicklungen. • bottom-up: Integration bestehender Datenbanken zu einer verteilten; typisch bei heterogenen Datenbanken. Datenverteilung • Fragmentierung der Daten zur Bildung logischer Einheiten, • Verteilung der Fragmente auf den Sites: Allokation aller Fragmente an jeder Site (volle Replikation) oder jedes Fragment an mehr als einer Site (partielle Replikation) oder jedes Fragment an genau einer Site (Partitionierung).

  39. Die Trennung von Fragmentierung und Allokation dient der Vereinfachung des Entwurf. • Globales Schema:Definition der Relationen eines vDBS ohne Berücksichtigung der Verteilung, • Fragmentierungsschema: Definition der Abbildung zwischen globalen Relationen und Fragmenten, • Allokationsschema:Definition der Abbildung zwischen Fragmenten und Sites. • Der Zugriff zu den Daten soll hinsichtlich Fragmentierung, Lokation, und Replikation transparent sein.

  40. R1 R1,1 S1 R2 R R2,1 R1,2 R3 R4 Globale Relation S2 R2,2 Fragmente Fragmente und ihre Allokation Allokation an den Sites R3,3 S3 R4,3

  41. Beispiel: horizontale Fragmentierung

  42. Beispiel: abgeleitete horizontale Fragmentierung

  43. Beispiel: vertikale Fragmentierung

  44. Allokation • Sei F = {F1, ..., Fn} eine Menge von Fragmenten, S = {S1, ...,Sm} ein Netzwerk gegeben durch die Menge seiner Sites, und Q = {Q1, ..., Qp} die Menge der relevanten Anwendungen. • Allokationsproblem: • Was ist die „optimale“ Zuordnung von F zu S bzgl. Q? • Optimaltätskriterium: • Minimalität der Kosten gegeben durch die Speicherkosten der Fi an den Sites Sj, der Anfragekosten für Fi an Site Sj, der Änderungskosten der Fi an allen Sites an den sie gespeichert sind, und die Kosten der Datenkommunikation. • Performanz im Sinne von Antwortzeiten oder Systemdurchsatz.

  45. Ende

More Related