Hauptseminar NoSQL ElasTraS und CloudTPS

Slides:



Advertisements
Ähnliche Präsentationen
Architektur eines Human-Task-Service
Advertisements

Präsentation des Unternehmens
Benutzerorientierte Designprinzipien für die Microsoft-Guidelines
Fast Fourier Transformation
Datenbanken Einführung.
B-Bäume.
Catalog Integration Made Easy P.J. Marrón, G. Lausen und M. Weber Universität Freiburg.
Vs61 6 Verteilte Datenverwaltung. vs62 Ziel:Zusammengehöriger Datenbestand soll über mehrere Stationen verteilt werden, z.B. Fragmentierung: in mehrere.
Replikationsarchitekturen Informationsverwaltung von Netzen Sommersemester 2003 Konrad Kretschmer
Datenbankzugriff im WWW (Kommerzielle Systeme)
Universität Paderborn
NATURAL Web-Integration 1 / 27/28-Feb-98 TST NATURAL Web-Integration Arbeitskreis NATURAL Süd Theo Straeten SAG Systemhaus GmbH Technologieberater Stuttgart.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Algorithmentheorie 04 –Hashing
Transaktionen in verteilten Datenbanken
Replikation in Datenbanksystemen.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Institut für Kartographie und Geoinformation Diskrete Mathematik I Vorlesung Bäume-
Geometrische Objekte in Datenbanken Martin Pfeifle Institut für Informatik, Universität München Lehr- und Forschungseinheit für Datenbanksysteme Prof.
Vorlesung 3: Verschiedenes Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Virtualisierungslösungen
Access 2000 Datenbanken.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Seminar: Verteilte Datenbanken
Datenmanagement in Sensornetzen PRESTO - Feedback gesteuertes Datenmanagement - SS 2007 Sören Wenzlaff.
Inhalte und Maßnahmen eingegeben haben,
Überlegungen zur Architektur eines Fachinformations-Netzwerkes am Beispiel des CeGIM Mehrwert ist es nicht nur, Daten von ihren Quellen zu den Nutzern.
Informationssysteme SS Informationssysteme Grundvorlesung Informatik Sommersemester 2004 Universität des Saarlandes, Saarbrücken Dr. Ralf Schenkel.
Synchronisation paralleler Transaktionen AIFB SS Konzept der Transaktion 4.2 Konzept der Transaktion (1/4) Eine Transaktion ist ein in sich geschlossener,
Einführung und Überblick
1 Vorlesung 3 Verschiedenes Peter B. Ladkin
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Bewertung von Cloud-Anbietern aus Sicht eines Start-ups
Storage für Datenbanken
Warum brauche ich ein CMS – Content Management System?
Webservice Grundlagen
SharePoint 2010 for Information Architects
Auslegung eines Vorschubantriebes
WS 2012/13 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #11 Transaktionsverwaltung.
Die Architektur von Jini Präsentation von Thomas Heinis & Michea Wankerl Seminar Information & Kommunikation WS 2000/01.
Ganzheitliches Projekt-, Ressourcen- und Qualitätsmanagement 1 Reports und AddOns Auf den folgenden Seiten wird Ihnen die Funktionsweise der Reports und.
Replikation und Synchronisation
DI (FH) DI Roland J. Graf MSc (GIS) U N I V E R S I T Ä T S L E H R G A N G Geographical Information Science & Systems UNIGIS.
Factsheets und Argumentarium Generelle Facts Offene Architektur Möglichkeit eines Application Service Providings wodurch hohe Initialkosten entfallen.
Das IT - Informationssystem
Verteilte Systeme Marcel Waldvogel. Marcel Waldvogel, IBM Zurich Research Laboratory, Universität Konstanz, , 2 Verteilte Systeme Entwicklung.
Analyseprodukte numerischer Modelle
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 19 Version 1.0a Programme - Zusatzsoftware Oracle: –Forms –Reports –Designer –Jdeveloper –APEX (Application Express)
Eike Schallehn, Martin Endig
Cloud Computing Klausur an der Hochschule Karlsruhe - Technik und Wirtschaft Sommersemester 2014, Dienstag, , 14:00 Uhr Name: ___________________.
Modul 141: Datenbanksysteme in Betrieb nehmen
->Prinzip ->Systeme ->Peer – to – Peer
Das IT - Informationssystem
Einführung Dateisystem <-> Datenbanksystem
Datenbanken im Web 1.
Vs51 5 Verteilte Datenverwaltung. vs52 Situation:Zusammengehöriger Datenbestand ist über mehrere Stationen verteilt, z.B. Fragmentierung: in mehrere Fragmente.
Vs Verteilte Transaktionen Situation:Fragmentierung: Ein Datenbestand ist über mehrere Stationen verteilt (z.B. verteilte Datenbank, verteiltes Dateisystem,...)
6.3 Verteilte Transaktionen
Middleware in Java vieweg 2005 © Steffen Heinzl, Markus Mathes Kapitel 1: Architektur verteilter Systeme.
Distributed Database Systems Parallele Datenbanksysteme von Stefan Schneider.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #1 Datenmanagement.
Cloud Computing Klausur an der Hochschule Karlsruhe - Technik und Wirtschaft Wintersemester 2014/15, Dienstag, , 14:00 Uhr Name: ___________________.
SAN & NAS © Nicole Waibel Index NAS SAN Quellen
© 2015 TravelTainment NoSQL – Eine Alternative zu relationalen Datenbanken Dominik Schmitz.
© 2012 TravelTainment Einführung in NoSQL-Datenbanken und deren Klassifizierung Von Patrick Becker.
Identity Management.  Zentrale Begriffe und Probleme  Modellbildung  Methoden zur Authentisierung über HTTP  Technische Aspekte  Compliance  Hindernisse,
Cloud Computing Klausur an der Hochschule Karlsruhe - Technik und Wirtschaft Wintersemester 2015/16, Montag, , 11:30 Uhr Name: ___________________.
Aufgabe 1: Begriffswelt
Google App Engine - Technische Stärken und Schwächen
 Präsentation transkript:

Hauptseminar NoSQL ElasTraS und CloudTPS Stefan Wenz

Never change a running system Relationale Datenbanksysteme haben sich bewährt Sie wurde über Jahre hinweg verfeinert und optimiert Warum also neue Systeme? Zunahme der Datenmenge Veränderung der Umgebung Verteilte Systeme Cloud Computing Inhaltsverzeichnis Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Cloud Computing Übertragung von Risiken Kosten nur für tatsächlich genutzte Ressourcen Scheinbar unbegrenzte Ressourcen Problem: Anpassungen bestehenden Programmen Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Inhalt der Präsentation Grundlagen CAP-Theorem Datenbank Konzpte Relationale Datenbanksysteme No-SQL Systeme CloudTPS Architektur Performance & Fehlertolerance Vor- & Nachteile ElasTraS Fazit Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Grundlagen – CAP Theorem X Z Xr Y Konsistenz Alle sehen zum gleichen Zustand das gleiche Nur wenn angenommen wird, dass innerhalb eines verteilten Systems nicht mehrere Instanzen des selben Datensatzes mit unterschiedlichen Werten vorhanden sein dürfen, wäre die Verknüpfung zwischen den beiden Konsistenzvorstellungen zutreffend. Partitionstoleranz Das System kann mit dem Verlust von Nachrichten auf eine definierte Art umgehen Verfügbarkeit Der Ausfall einzelner Knoten verhindert nicht die Lauffähigkeit des Gesamtsystems Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Grundlagen – CAP Theorem Ein verteiltes System kann nur gleichzeitig zwei der drei Eigenschaften erfüllen! Beispiele? Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Grundlagen – Datenbank Konzepte Bekanntes Konzept: ACID Atomizität Konsistenz Isolation Dauerhaftigkeit Für verteiltes System neues Konzept: BASE Basic Available Soft State Eventual Consistency Strong Consistency vs Eventual Consictency (part of Weak Consictency) Zentraler Punkt: Evenutal Consistency Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Relationale Datenbanksysteme - Vorteile Vorteile SQL: standardisiert & weitverbreitet Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Relationale Datenbanksysteme Standardisierte Anfragesprache Referenzierbarkeit Strukturierbarkeit von Daten Trennung physikalischer und logischer Zugriff Definierbarkeit von Sichten Begrenzte horizontale Skalierbarkeit Fest definiertes Schema Referenzierbarkeit  Keine bzw vermeidbarkeit von Redundanten Daten Vorteile SQL: standardisiert & weitverbreitet Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Übersicht NoSQL-Systeme Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Keine Verwendung von SQL als Anfragesprache NoSQL-Systeme Keine Verwendung von SQL als Anfragesprache Keine Definition Viel verschiedene Arten Gute horizontale Skalierbarkeit Keine Unterstützung des Transaktionskonzepts Dokumentation oftmals lückenhaft Nicht realisierte Leistungsmerkmale NoSQL-System Arten: Dokumentenbasierte (bsp. CouchDB); Spaltenorientierte (bsp. Cassandra) Key-Value (bsp. MemCached)  Vor- und Nachteile stark von der Umgebung abhängig & somit gut Abstimmbar auf Aufgabe und Umgebung Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS Entwickler Zhou Wie Guillaume Pierre Chi-Hung Chi von Vrije Universiteit, Amsterdam Idee Entwurf eine Middleware mit der die Cloud Technologie genutzt werden und zugleich die ACID-Eigenschaften zugesichert werden können. Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS - Architektur Elemente des Systems Transaction Processing System (TPS) Virtual Nodes Local Transaction Manager (LTM) Cloud Storage Service Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS – Architektur Nutzung von vorhandener Cloud-Technologie (z.B. Hbase) Feste Zuordnung zwischen LTM und Datensatz  exklusiver Schreibzugriff Übertragung der Datensätze in bestimmten Intervallen Liste der geänderten Daten im LTM  nur diese müssen in Cloud Storage übertragen werden Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS – Architektur Anfrageverwaltung der Web Application Load Balancing durch Hash-basierte Zuteilung von Virtual Nodes LTM hat lokale Kopie der ihm zugeordneten Datensätze im Speicher Eigenverantwortlichkeit der LTM für Replikation der Daten Nähere Erläuterung der Replikation notwendig  Sinfonia Primary-copy replication  Übertragung der Daten in das Replikat während redo-log in stable storage  Replikation in der ersten phase des 2PC + Einfacher Algorithmus + Mehrere Änderung können gebündelt übertragen werden - Keine Konsistenz im verteilten System Jeder LTM hat bestimmte Größe (Buffer)  Bufferpool notwendig aus dem die LTM sich bedienen können / erzeugt werden können Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS – ACID Atomizität Konsistenz Zwei-Phasen-Übertragung (2PC) Ermittlung aller an einer Transaktion beteiligten LTM Anfrage an alle beteiligte LTM ob Datenmanipulation möglich Rückmeldung von allen beteiligten LTM „COMMIT“ Start Transaktion Keine Übereinkunft  Reject der Transaktion Konsistenz Grundannahme: Datenbank ist in einem konsistenten Zustand  Bindende Konsistenzregeln für alle Transaktionen Nähere Erläuterung der Replikation notwendig  Sinfonia Primary-copy replication  Übertragung der Daten in das Replikat während redo-log in stable storage  Replikation in der ersten phase des 2PC + Einfacher Algorithmus + Mehrere Änderung können gebündelt übertragen werden - Keine Konsistenz im verteilten System Jeder LTM hat bestimmte Größe (Buffer)  Bufferpool notwendig aus dem die LTM sich bedienen können / erzeugt werden können Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS – ACID Isolation Dauerhaftigkeit Aufteilung der Transaktion in Sub-Transaktionen Aufteilungskriterium: Zugriff auf ein einzelnes Datenelement Globale Ordnung der Transaktionen notwendig  Vergabe von eindeutigen Zeitstempeln Jeder LTM hat eine chronologisch geordnete Liste mit den auszuführenden Transaktionen Jede Transaktion prüft ob einen LTM noch Transaktion mit einem kleinen Zeitstempel nicht ausgeführt hat  Notwendigkeit einer „RESTART“-Phase Dauerhaftigkeit Nach Checkpoint unproblematisch Vor Checkpoint durch Replikation der LTM gewährleistet Nähere Erläuterung der Replikation notwendig  Sinfonia Primary-copy replication  Übertragung der Daten in das Replikat während redo-log in stable storage  Replikation in der ersten phase des 2PC + Einfacher Algorithmus + Mehrere Änderung können gebündelt übertragen werden Keine Konsistenz im verteilten System Restart wird die durch einen Fehlermeldung einer Sub-Transaktion bei Zeitkonflikten ausgelöst. Kein Restart möglich wenn Transaktion in 2 Phase von 2PC. Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS – Perfromance & Fehlertoleranz Lineare Skalierbarkeit bis 40 LTM Fehlertoleranz des Systems Nähere Erläuterung der Replikation notwendig  Sinfonia Primary-copy replication  Übertragung der Daten in das Replikat während redo-log in stable storage  Replikation in der ersten phase des 2PC + Einfacher Algorithmus + Mehrere Änderung können gebündelt übertragen werden Keine Konsistenz im verteilten System Restart wird die durch einen Fehlermeldung einer Sub-Transaktion bei Zeitkonflikten ausgelöst. Kein Restart möglich wenn Transaktion in 2 Phase von 2PC. Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS – Transaktionsverlauf Client stellt Anfrage per Http Request Anfrage wird von der Web Application an TPS übertragen Transaktion wird von beliebigen LTM angenommen Look-Up welche anderen LTM beteiligt sind Start 2PC  Anfragen & Antwort abwarten Verteilen der Subtransaktionen und Start der Transaktion Checkpoint backup in Cloud Storage ? ! Optional: Weiterleitung von „Read-only“ Transaktionen  keine LTM weiter beteiligt Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS – Vor- & Nachteile Gute Horizontale Skalierbarkeit Zusicherung der ACID-Eigenschaften Nutzung bereits vorhandener Cloud-Technologie Partitionstoleranz Möglichkeit der Weiterleitung von „Read-only“ Transaktionen direkt an Cloud Storage Lineare Skalierung bisher nur bis 80 Knoten getestet Keine vollständige Implementierung des System Möglicher Performanceengpass durch Zeitstempelgenerator Einschränkung der Verwendbarkeit des Systems durch Grundannahmen der Entwickler Transaktionen sind nur kurzlebig Jede Transaktion manipuliert nur kleine Datenmengen Partitionierung des Systems Zwei Möglichkeiten Einer der LTM kann sich zum Hauptverantwortlichen machen für StoragePart & Konsistenter Zustand der Daten ist herstellbar  System ist weiter verfügbar Alle anderen Fälle  Alle Transaktion werden abgelehnt bis die Konditionen wieder zutreffen Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

ElasTraS Kofferwort bestehende aus Entwickler Elastic Transaction Data Store Entwickler Sudipto Das Divyakant Agrawal Amr El Abbadi vom Department of Computer Science, der UC Santa Barbara, CA, USA Department of Computer Science, UC Santa Barbara, CA, USA Entwickler sprechen hier bewusst von einem Data Store da das Wort Database System für Traditionelle Datenbanksystem reserviert ist. Das System unterstütz aber nur eine Subset von Operationen dieser Systeme Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

ElasTraS – Architektur Elemente des Systems Load Balancer Higher Level Transaction Manager Metadata Manager and Master Owning Transaction Manager Distributed Storage Transaction Processing System Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

ElasTraS – Architektur Distributed Storage von Amazon (S3) Nutzung vorhandener Cloud-Technologie als Raw Storage Feste Zuordnung zwischen OTM und Storage Zugriff der Web Application auf Raw Storage nur über „TPS“-System möglich Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

ElasTraS – Architektur Exklusiver Schreibzugriff des OTM auf den zugeordneten Raw Storage Verwaltung der OTMs über den „Metadata Manager and Master“ (MMM) Bearbeitung von „Read-only“ Transaktionen in HTM Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

ElasTraS – Transaktionsverlauf Client stellt Anfrage per Http Request Anfrage wird über einen Load Balancer an HTM übertragen HTM entscheidet ob er die Transaktion abhandeln kann Look Up der beteiligten OTM Weiterleitung der Subtransaktionen an die einzelnen OTM Checkpoint übertragen und Distributed Storage Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

ElasTraS – Vor- & Nachteile Gute horizontale Skalierbarkeit Nutzung bereits vorhandener Cloud-Technologie Verschieden Anbieter des „Raw Storage“ möglich Keine vollständige Implementierung vorhanden Keine Performanceanalyse bisher möglich Performanceengpass durch Metadata Manager and Master Eventueller Zugriff von „read-only“ Transaktionen auf veraltete Daten, da lediglich auf HTM zugegriffen wird Keine Beschreibung des Load Balancer Nur eingeschränkte Zusicherung der ACID-Eigenschaften based on some load balancing policy ACID unterstützung nur bei statically partitioned setup  applications can limit transactions to single partitions Keine globale konsistenz über meherer partitionen hinweg / globale serializability Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

CloudTPS & ElasTraS – Fazit ACID Eigenschafen Bedingte Unterstützung Volle Unterstützung Read-only Transaktionen Nur direkte Bearbeitung in den HTM möglich Bearbeitung in den LTM oder Direkt in Cloud Storgae Load Balancing Keine konkrete Lösung Lösung mittels Hashing Verwendung vorhandener Cloud Technologien Distributed Storage (S3) HBase Google Bigtable Amzone Simple DB Partitionstoleranz Gegeben Mögliche Problemstellen Metadata Manager and Master Zeitstempelgenerator Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017

Danke für die Aufmerksamkeit Fragen? Hauptseminar NoSQL WS10/11 – ElasTraS & CloudTPS 25.03.2017