RavenDB, schnell und skalierbar

Ähnliche Dokumente
Think Big. Skalierbare Anwendungen mit Azure. Aydin Mir Mohammadi Bluehands GmbH & co.mmunication KG

Datenbanken und Datenbanktypen Tag 1 : Kapitel 1. Christian Inauen. Lernziele. Entwicklung der Datenbanken.

NoSQL. Prof. Dr. Ingo Claßen. Einführung. Kategorisierung von NoSQL-Systemen. Verteilung. Konsistenz. Literatur

Skalierbare Webanwendungen

PostgreSQL im Cluster. Hans-Jürgen Schönig Hans-Jürgen Schönig

DOAG Datenbank Partitioning für OLTP Applikationstuning mal anders. Düsseldorf, , M. Griesel. Paragon Data GmbH Seite 1

Oracle Big Data Technologien Ein Überblick

Query Result Caching. Optimierung des Datenbankzugriffs

Aktuelle SE Praktiken für das WWW

Was ist Windows Azure? (Stand Juni 2012)

Aufbau eines Clusters mit der NoSQL- Datenbank MongoDB auf Basis von Einplatinencomputern

R.I.P Oracle-Datenbank. ggg

NoSQL Datenbanken EIN ÜBERBLICK ÜBER NICHT-RELATIONALE DATENBANKEN UND DEREN POTENTIALE IM ALLGEMEINEN UND IN DER INDUSTRIE

Big Data & Analytics Nationaler Akademietag, Fulda Referent: Meinhard Lingo

Erfahrungen mit TimesTen 7.0

Big Data und Oracle bringen die Logistik in Bewegung

Zukunft der Oracle Applikationsentwicklung: BC4J & XML

Non-Standard-Datenbanken Von NoSQL zu NewSQL

Windows Azure für Java Architekten. Holger Sirtl Microsoft Deutschland GmbH

Hochverfügbare Webanwendungen mit Apache Cassandra. msg systems ag, 26. November 2014

Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie

Datenbanksysteme. Prof. Dr.-Ing. Sebastian Michel TU Kaiserslautern. Wintersemester 2015/16.

Big Data in der Praxis

Wide column-stores für Architekten

Sinn (und Unsinn) für Informix Benutzer

SQL oder NoSQL: Das ist die Frage! Oracle NoSQL Database

MySQL HA Lösungen für Front- und Backend. Matthias Klein

Polyglot Persistence und NoSQL

Überblick über die Windows Azure Platform

Performance in der Oracle Datenbank von Anfang an

Algorithmen. Consistent Hashing Bloom Filter MapReduce. Distributed Hash Tables. Einführung 1

Performante Verarbeitung großer Datenbanken am praktischem Beispiel

S T O R A G E - LÖ S U N G E N

Datenbankbasierte Lösungen

ANALYTICS, RISK MANAGEMENT & FINANCE ARCHITECTURE. NoSQL Datenbanksysteme Übersicht, Abgrenzung & Charakteristik

Hochverfügbarkeit mit AlwaysOn für die SSISDB. Stefan Grigat,

Datenbanksysteme Kapitel 6: Neue Konzepte der Datenbanktechnologie

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.

NoSQL. Was Architekten beachten sollten. Dr. Halil-Cem Gürsoy adesso AG. SEACON 2012 Hamburg

The Unbreakable Database System

MySQL High Availability. DOAG 2013 Datenbank. 14. Mai 2013, Düsseldorf. Oli Sennhauser

NoSQL-Datenbanken. Kapitel 1: Einführung. Dr. Anika Groß Sommersemester Universität Leipzig 1-1

Partitionieren über Rechnergrenzen hinweg

Big Data Mythen und Fakten

Datenbankspiegelung mit (Active) Data Guard. und Abgrenzung

PostgreSQL in großen Installationen

NoSQL. Hintergründe und Anwendungen. Andreas Winschu

Tempo, Sicherheit und Komprimierung Neue Möglichkeiten der LOBs mit ORACLE 11g SecureFiles STCC Düsseldorf, Oracle Deutschland GmbH

WebLogic - Der beste Application Server für die Oracle Datenbank

Apache Cassandra, wieso brauche ich das?

Überblick und Vergleich von NoSQL. Datenbanksystemen

Redo Logs. Informationen soweit der Logminer reicht Thomas Klughardt Senior Systems Consultant

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG

Exadata und In-Memory Datenbewirtschaftung und Analyse Extrem mit Exadata und InMemory (Erfahrungsbericht)

Wie kann ich Azure mit meiner lokalen IT koppeln?

Google's BigTable: Ein verteiltes Speichersystem für strukturierte Daten. von Florian Eiteljörge

MySQL-Server im Teamwork - Replikation und Galera Cluster

Zünde den Turbo-Boost! (LOB-Migration beschleunigt)

Georgi Dimitrov. IT Administrator

Ist Dein PostgreSQL logisch genug für bidirektionalität? , Swiss PGDay Harald Armin Massa

<HTML DB> Web Application Development

1. Übersicht Public Cloud Anbieter (PaaS und IaaS)

Bibliothekssysteme / Verbundsysteme / Netze

Big Data Informationen neu gelebt

NoSQL & MongoDB Avision GmbH Dr. Gernot Pfanner

Big Data: Apache Hadoop Grundlagen

Wide Column Stores. Felix Bruckner Mannheim,

NoSQL-Databases. Präsentation für Advanced Seminar "Computer Engineering", Matthias Hauck,

Szenarien zu Hochverfügbarkeit und Skalierung mit und ohne Oracle RAC. Alexander Scholz

Elasticsearch aus OPS-Sicht Teil1. Markus Rodi Karlsruhe,

Oracle DB 12c: Die In-Memory-Option Oliver Zandner System-Berater für Oracle-DB-Technologien Oracle Hannover. Available July 2014

Transkript:

RavenDB, schnell und skalierbar Big Data & NoSQL, Aydin Mir Mohammadi bluehands GmbH & Co.mmunication KG am@bluehands.de

Immer mehr Mehr Performance Mehr Menge Mehr Verfügbarkeit

Skalierung http://www.flickr.com/photos/39901968@n04/4864698533/ Vertikale Skalierung Horizontale Skalierung

Skalierung Vertikale Skalierung ist einfacher Multi-Threading Cores, Speicher und IO ausnutzen Wird sehr schnell sehr teuer Hohes Potential, um klassische Anforderungen (ACID) gerecht zu werden

Am Ende hängt es an den Daten Klassische Datenbanken skalieren nicht Binsenweisheit

RDBMS: Performance no. clients 5,00 3 Instances 4,00 3,00 2,00 1,00 0,00 5,00 12 Instances 4,00 3,00 2,00 1,00 0,00

RDBMS: Performance no. clients 2,00 1,80 1,60 1,40 1,20 1,00 0,80 0,60 0,40 0,20 0,00 1 3 6 12

Man muss die Daten verteilen Willkommen in der Hölle Binsenweisheit

CAP-Theorem Betrifft ein System mit verteilten Daten. Betrachtet folgende Eigenschaften Consistency: Alle sehen gleichzeitig das gleiche Availability: Alle können lesen & schreiben Partition Tolerance: Ausfall eines Knotens führt nicht zum Ausfall des Systems

CAP-Theorem: Wähle 2 aus 3 Consitency ACID oder eventualy Consistent Antwort Verhalten Availabilty Partion Tolerance

CAP-Theorem: Beispiele Oracle Cluster (RAC) Kein CAP-Theorem, da nicht verteilt Datenbank Mirroring (Log-Shipping) Synchrone Commits: CA Asynchrone Commits & Sync: AP Partitionierung Sharding & Federation: CA

Sql Azur

RDBMS: Sql-Azure Sql-Server in Azure Immer drei Knoten 1 Primary, 2 Standby 1 Sync commit, 1 async commit Funktional eingeschränkt Kein Xml Kein CLR Kein OleDB (not supported) It just works

DBMS: Sql-Azure Latenz beachten Licht braucht 1,8 ms Sql Ping ca. 15 ms

Sharding Für Join und ref. Integrität müssen Mütter verteilt werden. Storage Mutter Mutter Mutter Storage Kind Mutter Mutter Mutter Kind Storage Mutter Mutter Mutter Kind Geeignete Aufteilung finden

Sql-Azure: Skalierung (CA) Manuelles Sharding Daten werden auf mehrere Knoten verteilt. Zugriff wird im Client gesteuert. Sql Azure Federation Eingebautes Sharding. Zugriff wird im Server gesteuert, jedoch nicht transparent.

Federation Limits Keine Transaktionen über shards. Verteilte Transaktionen sind in Sql-Azure nicht supported Kein Auto-Increment Vorteile gegenüber manuelles Sharding Online Split, Management Datenbank kennt die Verteilung. Shard kann abgefragt werden

Federation Federation key überlegen Über welche Eigenschaft einer Tabelle wird verteilt Federations erstellen Man kann die einzelnen Shards immer wieder splitten Sql-Statements anpassen Vor jedem Statement: Use Federation xxx (key=value),with filtering=off, reset

Azure Table Storage

Table-Storage Schemalos. Partitioniert. Jede Partition kann auf eine andere Maschine gehalten werden. Jede Entität hat ein PartitionKey und ein RowKey Versionierung über Timestamp

Table-Storage: How to use Queries nur auf RowKey und PartionKey mit = Table-Storage ist eine Hash-Table. Alle andere Operationen machen einen Full- Scan. Evtl. PartitionKey und danach Properties Limits beachten 64k pro Eigenschaft, 1 MB pro Entität 5000/sec auf Account und 500/sec auf Partition

Table-Storage: How to use Komplizierte denormalisierte Objekte Z.B.: Profile, Settings Eher statische Entitäten Vorberechnete Sichten. Daten werden je nach Anwendung vorbereitet. In RDBMS: Mehrere Clustered Indizes

Azure Blob Storage

Blob-Storage Filesystem in der Cloud Content ist von überall abrufbar Über http als Ressource einbinden

Query

Map-Reduce Idee Query in kleine Teile aufteilen Auf viele Knoten ausführen Voraussetzung Code und Daten sind nah D.h. Map-Reduce auf einer zentralen DB macht in der Regel keinen Sinn

Map-Reduce In Linq map --> Enumerable.Select reduce --> Enumerable.Aggregate Mehrere Implementierungen (deprecated) DryadLINQ Daytona Hadoop