© 2012 TravelTainment Einführung in NoSql-Datenbanken und der Vergleich zu relationalen Datenbanken Alexey Sibirtsev.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

8. Termin Teil B: Wiederholung Begriffe Baum
Datenbankdesign mit ACCESS.
Daten - Sicherung Begriffsdefinition Arten der Datensicherung
Datenbanken Einführung.
Übersicht RAID-Verfahren Labor für Betriebsdatenverarbeitung
Objekt – Relationales – Modell Tomasz Makowski IN
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Kapitel 4 Datenstrukturen
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
Microsoft Access – Einführung – Allgemeine Technologien I
MS Office-Paket: Access
Microsoft Windows 2000 Terminal Services
Sortierverfahren Richard Göbel.
Effizienz: Indexstrukturen
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
AGXIS – Ein Konzept für eine generische Schnittstellenbeschreibung Dr.-Ing. Ulrich Hussels, RISA GmbH 07. Juni 2005 Workshop Umweltdatenbanken 2005.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (15 Hashverfahren: Verkettung der Überläufer) Prof. Th. Ottmann.
XINDICE The Apache XML Project Name: Jacqueline Langhorst
Datenbankdesign und Normalisierung
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Access 2000 Datenbanken.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Smartphones im Kanzleinetz Vergleich der technischen Umsetzung COLLEGA - TAG Freitag, 27. November 2009.
Flache Datenstrukturen in der Operationsdokumentation.
Netzwerke Peer-to-Peer-Netz Client-Server Alleinstehende Server
Relationale Datenbankmodelle
5 Methoden und Werkzeuge zur Prozessmodellierung
Synergieeffekte durch softwaregestützte Prozessmodelle
Gegenstand EDV Thema: Informative Webseiten
Präsentation von: Tamara Nadine Elisa
Minh Bui 14. März 2013 Mobile Visualization in SenseDroid Diplomarbeit Minh Bui, # 1 of 16 Aufgabensteller: Prof. Dr. Andreas Butz Betreuer:
Effiziente Algorithmen
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Erstellen einer Webseitenstatistik mithilfe eines OLAP-Servers
Datenbank.
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
Effiziente Algorithmen
Datenbanken Dantenbanksystem Data Base System Datenbasis (Daten)
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Allgemeines zu Datenbanken
1 Nutzen Sie diese Powerpoint-Präsentation beim Selbstlernen oder in Veranstaltungen zur Einführung in das jeweilige Thema. Einführung Lernmodul Nutzungsbedingungen:
(D.h. „Hallo MausFans!“ auf Japanisch).
Replikation und Synchronisation
Vom Kontext zum Projekt V Carina Berning Sabrina Gursch Pierre Streicher Intelligente Dateisysteme.
Freiwillige Feuerwehr der Stadt Perg
verstehen planen bearbeiten
Normalisierungsprozess
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
ADAT©2004 Dipl. - Ing. Walter SabinSeite: 28 Version 1.0a Elementare Datenstrukturen –Tables Ansammlung von rows Jede row enthält eine oder mehrere column(s)
Die Management-Tools von Z&H COACH beinhalten zentrale Hilfsmittel für ein Management-System. Sorgfältig angewendet führen diese Tools Ihr Unternehmen.
Cloud Computing Klausur an der Hochschule Karlsruhe - Technik und Wirtschaft Sommersemester 2014, Dienstag, , 14:00 Uhr Name: ___________________.
Stundenplanung Programm zur Stunden- und Zimmerplanung auf der Basis von Datenbanken und unter Berücksichtigung von Mehrfachnutzung im (lokalen) Netz (Internet.
->Prinzip ->Systeme ->Peer – to – Peer
Vs51 5 Verteilte Datenverwaltung. vs52 Situation:Zusammengehöriger Datenbestand ist über mehrere Stationen verteilt, z.B. Fragmentierung: in mehrere Fragmente.
Das Internet Ein Netzwerk, das viele Rechner miteinander verbindet
Binärbäume.
BHAK/BHAS 1 Salzburg KIDM 2ASBS Schuljahr 2004/05
Pointer. Grundsätzliches: Im Arbeitsspeicher werden Daten gespeichert. Um auf die Daten eindeutig zugreifen zu können, werden diesen Daten Adressen zugeordnet.
© 2015 TravelTainment NoSQL – Eine Alternative zu relationalen Datenbanken Dominik Schmitz.
Vergleich von MongoDB und Redis im Hinblick auf ihre potentielle Eignung zur Messdatenerfassung und -auswertung Seminararbeit Im Studiengang Scientific.
Key-Value Paare (KVP) - Metadaten für Kanäle speichern und nach MDF4 exportieren PM (V1.0)
© 2012 TravelTainment Einführung in NoSQL-Datenbanken und deren Klassifizierung Von Patrick Becker.
Von Wietlisbach, Lenzin und Winter
Präsentation von Darleen und Michèle
Datenbanken Von Amed und Alicia.
Von Wietlisbach, Lenzin und Winter
 Präsentation transkript:

© 2012 TravelTainment Einführung in NoSql-Datenbanken und der Vergleich zu relationalen Datenbanken Alexey Sibirtsev

© 2012 TravelTainment Ablauf  Einleitung  NoSql-Eigenschaften  Brewer‘s Theorem  Konsistenz in NoSql-Datenbanken  Datenbanktypen  Key-Value Datenbanken  Graphenorientierte Datenbanken  Dokumentorientierte Datenbanken  Spaltenorientierte Datenbanken  Fazit/Ausblick

© 2012 TravelTainment Einleitung  1998: Erste Erwähnung des NoSql-Begriffes von Carlo Strozzi, gemeint als „No Sql“  2009: Neudefinition des Begriffes als „Not Only Sql“  Woher kommt die Popularität?  Unternehmen mit bis zu 1000 Mitarbeitern lagern ca. 3.8 Petabyte Daten  Der Datenzuwachs eines solchen Unternehmens beträgt 40 Prozent pro Jahr  Täglich entstehen 2.5 Quintillionen Byte (= 2*10^5 Petabyte)  90% der Daten, die aktuell im Umlauf sind, entstanden in den letzten 2 Jahren  Abhängigkeit und Vernetzung der Daten nimmt zu (z.B. durch soziale Netzwerke) Einleitung Eigenschaften Brewser‘s Theorem BASE-Modell

© 2012 TravelTainment Einleitung  Wieso sind relationale Datenbanken nicht mehr so gut geeignet?  Werden mit einer wachsenden Datenmenge schnell langsamer  Prüfung der korrekten Datenstrukturen  Bildung von Relationen zwischen den Daten  Komplex vernetzte Daten sind schwer darzustellen  Unterteilen in viele Tabellen wird notwendig  Zusammenführen vieler Tabellen ist zeitaufwendig Einleitung Eigenschaften Brewser‘s Theorem BASE-Modell

© 2012 TravelTainment NoSql-Eigenschaften  Verzicht auf ein festes Schema  Keine Relationen oder feste Datenstrukturen vorhanden  Speicherung der Daten wird flexibler gestaltet  Verzicht auf die Abfragesprache SQL  Kein allgemeiner NoSql-Standard vorhanden  Kommunikationsschnittstellen werden in der jeweiligen Implementierung zur Verfügung gestellt  Ausfalltoleranz, Verfügbarkeit und horizontale Skalierbarkeit  Datenbanken werden als verteilte Systeme implementiert Einleitung Eigenschaften Brewser‘s Theorem BASE-Modell

© 2012 TravelTainment Brewer‘s Theorem  Tritt bei verteilten Systemen in Kraft  Beschreibt den Zusammenhang zwischen drei wichtigen Eigenschaften in solchen Systemen  Consistency (Konsistenz): Gleiche Daten auf jedem Client  Availability (Verfügbarkeit): Ständige Verfügbarkeit und Erreichbarkeit des Systems  Partition Tolerance (Ausfalltoleranz): Korrekte Funktionsweise bei Ausfall von Verbindungen oder Servern  Nur zwei dieser Eigenschaften sind in einem verteilten System erfüllbar! Eigenschaften Brewser‘s Theorem BASE-Modell Datenbanktypen

© 2012 TravelTainment Brewer‘s Theorem  Wieso sind nur zwei Eigenschaften erfüllbar?  Ein Beispiel:  Ausfalltolleranz: Ein verteiltes System mit redundanten Daten wird benötigt  Konsistenz: Datensätze müssen bei Aktualisierungen auf allen Servern gesperrt werden  Dieses Sperren ist zeitaufwändig -> Verfügbarkeit kann nicht mehr erreicht werden! Eigenschaften Brewser‘s Theorem BASE-Modell Datenbanktypen

© 2012 TravelTainment Brewer‘s Theorem  Verteilte relationale Datenbanken:  Konsistenz steht im Vordergrund  ACID-Prinzipien müssen befolgt werden  Realisierung der anderen Eigenschaft über hochwertige und leistungsfähige Hardware (vertikale Skalierung)  Kostenintensiv!  Verteilte NoSql-Datenbanken:  Ausfalltolleranz und Verfügbarkeit stehen im Vordergrund  Häufige Verwendung bei Internetanwendungen (z.B: Online-Shops)  Gewinnverlust, wenn ein Systemausfall vorliegt oder die Verfügbarkeit nicht vorhanden ist  Verzicht auf die Konsistenz und somit auf das ACID- Konsistenzmodell Eigenschaften Brewser‘s Theorem BASE-Modell Datenbanktypen

© 2012 TravelTainment Konsistenz in NoSql-Datenbanken  BASE-Konsistenzmodell (Basically Available, Soft State, Eventually Consistent):  Daten wechseln zwischen einem konsistenten und einem inkonsistenten Zustand  Die Daten sind nur zu bestimmten Zeitpunkten für alle Clients konsistent  Konkurrierender Zugriff wird über das Multiversion Concurrency Control Verfahren geregelt  Ersatz für die Sperren, die in relationalen Datenbanken verwendet werden  Versionierung von Datensätzen  Es liegt immer eine Version des Datensatzes bereit Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Die wichtigsten NoSql-Datenbanktypen Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Key-Value-Datenbanken  Mit assoziativen Feldern aus der Programmierung vergleichbar  Ein Wert wird einem Schlüssel zugewiesen  Der Wert kann eine komplexe Datenstruktur (z.B. eine Liste oder ein assoziatives Feld darstellen)  On-Disk und In-Memory Varianten:  On-Disk: Speicherung der Daten auf der Festplatte  In-Memory: Speicherung der Daten im Arbeitsspeicher Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Key-Value-Datenbanken  Vorteile:  Schnelle Zugriffszeiten von O(1)  Im Gegensatz zu relationalen Datenbanken sind die Zugriffszeiten unabhängig von der Datenmenge  Gute horizontale Skalierbarkeit  Verwendung einer Hash-Funktion, um einen Server zu einem Schlüssel zu bestimmen -> Zeitersparnis  Nachteile:  Umständlich nach einem Wert zu suchen  Zusätzliche Verweise vom Wert auf den Schlüssel und somit wechselseitige Beziehungen wären nötig  Datenverlust schnell möglich, falls ein Schlüssel versehentlich überschrieben wird Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Graphenorientierte Datenbanken  Bereits seit den 60er Jahren bekannt  Sollten ursprünglich als Allzweckdatenbanksystem dienen  Vom einfacheren relationalen Ansatz verdrängt worden  Steigendes Interesse an diesen Datenbanken, da die graphenstrukturen im Internet wachsen  Vor allem für soziale Netzwerke (z.B. Twitter) brauchbar  Bestehen aus Knoten und Kanten Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Graphenorientierte Datenbanken  Vorteile:  Bilden reale Netzwerkstrukturen (z.B. soziales Geflecht aus Freunden und Bekannten) direkt ab und erleichtern somit das Verständnis für diese  Die Suche bleibt unabhängig von der Größe der Netzwerkstruktur stets performant  Gleiche Zeit für einen Kantenschritt  Verzicht auf die rechenintensiven JOIN-Operationen  Verwendung von Algorithmen aus der Graphentheorie, um die Performance zu verbessern  Nachteile:  Einsatz wird komplex, falls für einen unpassenden Anwendungsfall verwendet  Nutzbarkeit komplizierter  Keine einfach verständliche Abfragesprache, die in allen Graphendatenbanken gilt Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Dokumentorientierte Datenbanken  Arbeiten mit Dokumenten statt mit Tabellen  Dokumente sind keine „Textdateien“, sondern Sammelcontainer  Ein solcher Sammelcontainer enthält Schlüssel-Wert- Paare  Der Wert darf auch nicht atomare Inhalte, wie ein Feld oder eine Datei beinhalten  Die Schlüssel sind innerhalb des Dokuments eindeutig Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Dokumentorientierte Datenbanken  Vorteile:  Freiheit für den Benutzer, da jedes Dokument verschiedene Schlüssel enthalten kann  Speicherung und Darstellung der Daten in dem JSON- Format  Arbeiten mit zusammenhängenden Daten wird erleichtert  Zusammenhängende Daten werden geschlossen in Dokumenten gespeichert  Es müssen nicht zunächst viele Tabellen zusammengeschlossen werden  Nachteile:  Prüfung der Plausibilität muss auf die Anwendungsebene verlagert werden Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Spaltenorientierte Datenbanken  Grundlegend anderes Speicherprinzip als bei relationale Datenbanken  Datensätze werden spaltenweise abgespeichert  Column Families statt Tabellen  Haben keine Struktur  Können beliebig viele Spalten enthalten Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Spaltenorientierte Datenbanken  Beispiel einer Mitarbeiterliste:  Speicherung in einer relationalen Datenbank:  1, Muster, 30000; 2, Testperson, 32000;  Speicherung in einer spaltenorientierten Datenbank:  1, 2; Muster, Testperson; 30000, 32000; Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick MitarbeiterIDNameJahresgehalt 1Muster Testperson32000

© 2012 TravelTainment Spaltenorientierte Datenbanken  Vorteile:  Schnellere Durchführung von Analysen, die meistens über eine einzige Spalte stattfinden  Relationale Datenbank:  Spalte jedes Datensatzes muss einzeln abgerufen werden -> viele sequentielle Lesezugriffe auf den Arbeitsspeicher  Spaltenorientierte Datenbank:  Spalte muss einmal ermittelt werden -> danach Iteration durch den zugehörigen Arbeitsspeicher  Speicherersparnis:  Keine Speicherreservierung für leere Einträge  Gleiche Datentypen nebeneinander, somit bessere Ablage im Speicher  Verwendung von Komprimierungsverfahren, da gleiche Datentypen nebeneinander (z.B. Zusammenfassung von Sequenzen) Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Spaltenorientierte Datenbanken  Nachteile:  Schlechter Umgang mit Ad-Hoc Abfragen  Flexible Abfragen, die beliebige Daten zurückgeben können. Die Struktur der Datenbank spielt bei diesen Abfragen keine Rolle  Datenbankstruktur muss an die später verwendeten Datenbankabfragen angepasst werden  Schlechtere Flexibilität Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Fazit/Ausblick  Nicht standardisiert -> Schreckt viele Unternehmen von der Verwendung ab  Große Unternehmen (z.B. Amazon, Google) setzen NoSql-Datenbanken erfolgreich ein  Nicht für alle Anwendungsfälle gedacht  Viel Potential für neue Fortschritte und Ideen:  Multiversion Concurrency Control Verfahren  MapReduce Verfahren Brewser‘s Theorem BASE-Modell Datenbanktypen Fazit/Ausblick

© 2012 TravelTainment Fragen?

© 2012 TravelTainment Vielen Dank!