Click here to load reader
View
21
Download
0
Embed Size (px)
DESCRIPTION
Mobile Datenbanksysteme. Mark Thomé INF – M2 – AW1. Agenda. Motivation Grundlagen Replikation und Synchronisation Mobile Transaktionen Anfrageverarbeitung Mobile Datenbanken im Ferienclub Fazit. Agenda. Motivation Grundlagen Replikation und Synchronisation Mobile Transaktionen - PowerPoint PPT Presentation
Mobile DatenbanksystemeMark ThomINF M2 AW1
AgendaMotivationGrundlagenReplikation und SynchronisationMobile TransaktionenAnfrageverarbeitungMobile Datenbanken im FerienclubFazit
Mobile Datenbanksysteme
AgendaMotivationGrundlagenReplikation und SynchronisationMobile TransaktionenAnfrageverarbeitungMobile Datenbanken im FerienclubFazit
Mobile Datenbanksysteme
MotivationKomplexitt der Anforderungen steigtMobile Clients fr Integration von GeschftsprozessenOnline/Offline-SzenarioSpeicher auf mobilen Gerten limitierte Ressourcen Replikation und Synchronisation
Mobile Datenbanksysteme - Motivation
AgendaMotivationGrundlagenReplikation und SynchronisationMobile TransaktionenAnfrageverarbeitungMobile Datenbanken im FerienclubFazit
Mobile Datenbanksysteme
DefinitionenMobiles Datenbanksystem[1]Small-Footprint-DatenbanksystemInstalliert auf mobilem ClientSpeichert Daten dauerhaft und in strukturierter WeiseStellt Datenbankfunktionalitt bereitSpeziell angepasst an die Anforderungen und Bedrfnisse von beschrnkten Ressourcen
Mobile Datenbanksysteme - Grundlagen
Klassische Client/Server-ArchitekturClient: Initiierender ProzessStellt AnfragenErteilt AuftrgeServer: Reagierender ProzessBearbeitet AnfragenErhlt AuftrgeAnfrage-Antwort-Protokoll:
Mobile Datenbanksysteme - Grundlagen
Client/Server-Klassifikation
Mobile Datenbanksysteme - Grundlagen
Verteilte DatenbanksystemeIdee: Transparente Verteilung von Daten und Datenbankfunktionalitt auf verschiedene KnotenJeder Knoten hat eigenes DBSJeder Knoten ist EinstiegspunktAlle Knoten zusammen bilden das verteilte System
Mobile Datenbanksysteme - Grundlagen
Verteilte Datenbanksysteme: KlassifikationKlassifizierung durch drei Dimensionen:HeterogenittVerteilungAutonomie
Mobile Datenbanksysteme - Grundlagen
Verteilte Datenbanksysteme: Anforderungen Lokale AutonomieUnabhngigkeitHohe VerfgbarkeitOrttransparenzFragmentierungstransparenzReplikationstransparenzVerteilte AnfrageverarbeitungVerteilte TransaktionsverwaltungHardware-UnabhngigkeitNetzwerkunabhngigkeitDatenbanksystemunabhngigkeit
Mobile Datenbanksysteme - Grundlagen
Verteilte Datenbanksysteme: SchemaarchitekturGlobales konzeptionelles Schema:Beschreibung des logischen Aufbaus der Gesamt-DatenbankSichert die VerteilungstransparenzGlobales Verteilungsschema:Festlegung der DatenverteilungAuf logischer Ebene eine prdikative Beschreibung der Verteilung (Partitionierung)Auf physischer Ebene die genaue Festlegung des Speicherortes (Allokation)
Mobile Datenbanksysteme - Grundlagen
Mobile verteilte DatenbanksystemeMobilitt als Erweiterung der Verteilungs-KlassifikationMobile KnotenNetzpartitionierung durch hufige Trennung mobiler Knoten von Gesamtsystem
Mobile Datenbanksysteme - Grundlagen
Erweiterte Client/Server-Architektur
Mobile Datenbanksysteme - Grundlagen
AgendaMotivationGrundlagenReplikation und SynchronisationMobile TransaktionenAnfrageverarbeitungMobile Datenbanken im FerienclubFazit
Mobile Datenbanksysteme
Replikation und SynchronisationReplikation: Einfhrung von DatenredundanzSynchronisation: Abgleich von redundanten Daten, die gendert wurdenReplikation und Synchronisation sind fr die Umsetzung eines Offline-Szenarios notwendig
Mobile Datenbanksysteme - Replikation und Synchronisation
Vorteile von ReplikationVerfgbarkeitKommunikationskostenPerformanzLastbalancierungDatenverlustOffline-Szenario
Mobile Datenbanksysteme - Replikation und Synchronisation
Nachteile von ReplikationSpeicherplatzbedarfKonsistenzsicherungKomplexitt des Systems
Mobile Datenbanksysteme - Replikation und Synchronisation
Zielkonflikt der ReplikationForderung an Replikation sind Verfgbarkeit, Konsistenz und KostenAlle drei Forderungen sind gleichzeitig nicht zu erreichenBeispiel: Hohe Verfgbarkeit durch hohe Anzahl von Replikaten erschwert die Konsistenzsicherung
Mobile Datenbanksysteme - Replikation und Synchronisation
ReplikationsstrategienCopy-Update-StrategieFehlerbehandlungKonsistenzsicherung konkurrierender Zugriffe Erstellung einer SerialisierbarkeitsreihenfolgeNutzung von Sperrverfahren, Zeitstempelverfahren sowie semantischen SynchronisationsverfahrenBehandlung von LesetransaktionenBercksichtigung von Alter und Konsistenz
Mobile Datenbanksysteme - Replikation und Synchronisation
ReplikationsdefinitionReplikationsschemadefinition: Definition des Ausschnitts des Datenbankschemas auf der Replikationsquelle, welcher fr die Replikation genutzt wirdBeschreibt Operationen (z.B. lokal nderbar) und zustzliche IntegrittsbedingungenDient als Erweiterung fr den SynchronisationsprozessReplikationsdefinition:Auswahl der zu replizierenden Daten in Abhngigkeit der Replikationsschemadefinition
Mobile Datenbanksysteme - Replikation und Synchronisation
SynchronisationZielsetzungBewahrung bzw. Wiederherstellung eines konsistenten Zustands innerhalb der ReplikationsumgebungProzess bestehend aus zwei Phasen:ReintegrationRckbertragungBidirektional wenn beide Phasen in einem Arbeitschritt abgehandelt werdenUnidirektional wenn nur eine Phase in einem Arbeitsschritt abgehandelt wird
Mobile Datenbanksysteme - Replikation und Synchronisation
Replikations- und SynchronisationsverfahrenReplikationsstrategien als Grundlage
Mobile Datenbanksysteme - Replikation und Synchronisation
Konsistenzerhaltene VerfahrenPessimistische Verfahren: Erhaltung der Datenkonsistenz durch SperrenROWA (Synchron)Gleichzeitige nderung aller Replikate in einer TransaktionFr mobile Umgebungen nicht geeignetPrimary Copy-Verfahren (Asynchron)nderungen auf einer PrimrkopieFr mobile Umgebungen nur bedingt geeignetQuorum-Verfahren (Asynchron)nderungen nur in Abhngigkeit von verfgbaren ReplikatenFr mobile Umgebungen nur bedingt geeignet
Mobile Datenbanksysteme - Replikation und Synchronisation
Verfgbarkeitserhaltende VerfahrenVirtual Primary-CopyErweiterung des Primary Copy-VerfahrensSynchronisation zwischen virtueller und realer Primrkopie erforderlichSehr gut fr mobile Umgebungen geeignetSnapshot-VerfahrenSnapshot als materialisierte Sicht nicht-lokaler DatenPublish & Subscribe-ModellAuf Snapshots kann whrend Offline-Phase gearbeitet werdenSynchrone oder asynchrone Synchronisation Konflikte mssen erkannt und aufgelst werdenSehr gut fr mobile Umgebungen geeignet
Mobile Datenbanksysteme - Replikation und Synchronisation
AgendaMotivationGrundlagenReplikation und SynchronisationMobile TransaktionenAnfrageverarbeitungMobile Datenbanken im FerienclubFazit
Mobile Datenbanksysteme
Mobile TransaktionenKlassisches ACID-Transaktionskonzept als Grundlage
Mobile Datenbanksysteme - Mobile Transaktionen
Mobile Transaktionen: Klasse 1Kangaroo-TransaktionenBercksichtigt die Bewegung von mobilen Transaktionen, z.B. Wechsel von FunkzellenPreserialisation Transaction Management TechniqueAusfhrung der Transaktion kann temporr unterbrochen werdenOffen-geschachtelte TransaktionenTeiltransaktionen: Mglichst frhzeitiges Freigeben von belegten RessourcenPrewrite-TransaktionenZweistufige Transaktionsausfhrung
Mobile Datenbanksysteme - Mobile Transaktionen
Mobile Transaktionen: Klasse 2Isolation-Only-TransaktionenZiel: Mglichst effiziente TransaktionsverarbeitungNur Isolation-EigenschaftSchwache/Strikte TransaktionenZiel: Mglichst effiziente KonsistenzsicherungErstellen von Clustern innerhalb einer ReplikationsumgebungInnerhalb eines Clusters strikte KonsistenzZwischen Clustern schwache KonsistenzWhrend Offline-Zeitpunkt bildet mobiler Client eigenen Cluster Konfliktauflsung beim Einbinden des mobilen Clusters notwendig
Mobile Datenbanksysteme - Mobile Transaktionen
Mobile Transaktionen: Klasse 2 (2)Promotion-TransaktionenZiel: Konfliktvermeidung durch zustzliche RegelnCompact als Einheit aus zu replizierenden Daten, Datenzugriffsmethoden, Konsistenzbedingungen, Zustandsinformationen und ZusicherungenAusfhrung von Transaktionen auf lokalen CompactsSynchronisation von Compacts mit zentralem Datenbestand mit variablen KorrektheitskriterienSemantische TransaktionenZiel: Konfliktvermeidung durch intelligente Fragmentierung der zu replizierenden Daten
Mobile Datenbanksysteme - Mobile Transaktionen
Mobile Transaktionen: Klasse 2 (3)Provisorische TransaktionenEinfachste Transaktion der Klasse 2Erweiterung des Virtual Primary Copy-VerfahrensTwo Tier-Replikation: mobile und stationre KnotenGrundstzliche Durchfhrung von vorlufigen Transaktionen auf lokalem DatenbestandSynchronisation mit globalem Datenbestand durch nachziehen aller vorlufigen lokalen Transaktionen als Basistransaktion auf Master-KnotenVerteilung der Basistransaktion an alle anderen Knoten Konflikterkennung und Konfliktauflsung notwendigAls einziges Klasse 2 Transaktionsmodell in kommerziellen Produkten verfgbar
Mobile Datenbanksysteme - Mobile Transaktionen
AgendaMotivationGrundlagenReplikation und SynchronisationMobile TransaktionenAnfrageverarbeitungMobile Datenbanken im FerienclubFallbeispielFazit
Mobile Datenbanksysteme
AnfrageverarbeitungBekannte Anfrageverarbeitung (Query-Engine) ist nicht auf leistungsschwachen Gerten einsetzbarAnfragekomplexitt: Anfrageoptimierung nur durch heuristische statt kostenbasierter OptimierungenGewinn: Einsparung von Rechenleistungnderungsdynamik zugegriffener Daten:Bei statischen Daten bringen vorkompilierte Anfragen und materialisierte Sichten (Snapshots) eine PerformanzsteigerungGewinn: Einsparung von SpeichernutzungEnergieverbrauch und Kommunikationskosten
Mobile