Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Vs61 6 Verteilte Datenverwaltung. vs62 Ziel:Zusammengehöriger Datenbestand soll über mehrere Stationen verteilt werden, z.B. Fragmentierung: in mehrere.

Ähnliche Präsentationen


Präsentation zum Thema: "Vs61 6 Verteilte Datenverwaltung. vs62 Ziel:Zusammengehöriger Datenbestand soll über mehrere Stationen verteilt werden, z.B. Fragmentierung: in mehrere."—  Präsentation transkript:

1 vs61 6 Verteilte Datenverwaltung

2 vs62 Ziel:Zusammengehöriger Datenbestand soll über mehrere Stationen verteilt werden, z.B. Fragmentierung: in mehrere Fragmente aufgeteilt Replikation: in mehreren Kopien gespeichert Mischformen von Fragmentierung und Replikation zusammengehörig: gewisse Konsistenz-Eigenschaften, beschrieben durch Invariante, z.B. bei Replikation: alle Kopien gleich Motivation:(Replikation:) Verfügbarkeit – schnell und ausfallsicher (Fragmentierung:) Lastverteilung, Parallelarbeit u.a. (z.B. verteilte Datenbank, verteiltes Dateisystem, verteilter Namensdienst,...)

3 vs63 Nichtverteilter Datenbestand: bestimmte Station/Prozess fungiert als zuständiger Verwalter (Träger, host, Anbieter, server) des Datenbestands, nimmt von Klienten-Prozessen (clients) Nachrichten entgegen, die zum Lesen und/oder Modifizieren auffordern, antwortet gegebenenfalls mit gelesenen Werten.

4 vs64 Abstraktion:Verteiltes Objekt, bestehend aus mehreren Teilen (Fragmenten/Kopien), die auf mehrere Anbieter verteilt sind. Operationen werden von Klienten ausgelöst durch Nachrichten an Teil(e) des Objekts. Verteilter Datenbestand:

5 vs65 Konsistenz ist bedroht durch lokale Nichtsequentialität (z.B. nebenläufiger Server) Sperrsynchronisation/Transaktionen verteilte Nichtsequentialität verteilter Ausschluss ( 5.4) verteilte Transaktionen ( 7)

6 vs66 6.1 Replikation bedeutet: Datenobjekt existiert in mehreren Kopien auf verschiedenen Stationen (copies, replicas) Vorteile: Kein Engpass für zugreifende Klienten Geschwindigkeit, Skalierbarkeit Eventuell sogar schneller lokaler (oder fastlokaler) Zugriff Gute Verfügbarkeit (availability) auch wenn eine Kopie (oder mehrere) nicht erreichbar/funktionsfähig (kein single point of failure) Fehlertoleranz (fault tolerance) durch Mehrheitsentscheidung bei Fehlverhalten von Kopien

7 vs67 Nachteile: Die Kopien können nicht zu jedem Zeitpunkt (? keine globale Zeit!) identisch gehalten werden. Ausnahme: replizierte Konstanten, replizierter Code! Schneller Lesezugriff – auf eine der Kopien – wird mit aufwendigerem Schreibzugriff - auf alle Kopien - erkauft.

8 vs68 Terminologie: Objekte:programmiersprachliche Objekte oder Seiten, Segmente, Dateien, Tabellen in relationalen DB,..... Verwalter:(server) der Prozess, der eine Objektkopie verwaltet; auch Replikatverwalter (replica manager) (ist u.U. nichtsequentiell (threaded) ) ist typischerweise für mehrere Objekte eines bestimmten Typs zuständig

9 vs69 Passive Replikation:Bei Änderung einer Kopie wird der neue Wert an alle anderen Verwalter geschickt. Aktive Replikation:Bei Änderung einer Kopie wird der Operations- bezeichner samt Parametern an alle Verwalter geschickt, und diese führen die Operation lokal aus. Kriterien: Objekt- vs. Parametergröße Rechenaufwand der Operation

10 vs610 6.1.1 Konsistenz replizierter Objekte Definition von Konsistenz (consistency): Naive Definition:Kopien sind stets identisch unerfüllbare Forderung Sinnvolle Definition:unter Berücksichtigung von Datenabstraktion: Objekt verhält sich so, als sei es nicht repliziert immer noch starke Forderung – für manche Anwendungen unnötig stark

11 vs611 Konsistenz z.B. erreichbar durch Sperren des gesamten Objekts oder verteilte Transaktion auf den Kopien zu restriktiv und zu aufwendig Stattdessen: lokale Sperrsynchronisation bei jeder Kopie (concurrency control) plus Konsistenzerhaltung mittels geeigneter Rundrufe (consistency control)

12 vs612 Wünschenswerte Eigenschaft 1: Kausalitätstreue: Eine Folge kausal abhängiger Operationsaufrufe auf einem replizierten Objekt x hat die gleichen Effekte/Ergebnisse wie eine entsprechende sequentielle Ausführung auf einem nichtreplizierten x (wenn sonst keine weiteren Aufrufe im Spiel sind)

13 vs613 321321 2121 client pop 3 top 2 nicht repliziert 321321 clientcopy pop 3 client top 3 copy 321321 2121 repliziert

14 vs614 Wünschenswerte Eigenschaft 2: Unabhängigkeitstreue: Effekt und Ergebnisse von kausal unabhängigen Operationsaufrufen auf einem replizierten Objekt x sind die gleichen wie bei einer nebenläufigen Ausführung auf einem nichtreplizierten x (z.B. bei zwei Operationen a, b auf einem serialisierbaren Objekt x: erst a, dann b oder erst b, dann a)

15 vs615 2121 client pop 2 1 nicht repliziert 2121 pop 1 2 oder: 2121 clientcopy pop 2 client pop 2 copy 2121 repliziert 11


Herunterladen ppt "Vs61 6 Verteilte Datenverwaltung. vs62 Ziel:Zusammengehöriger Datenbestand soll über mehrere Stationen verteilt werden, z.B. Fragmentierung: in mehrere."

Ähnliche Präsentationen


Google-Anzeigen