Prof. Dr. Stefan Edlich NoSQL in der Cloud.

Slides:



Advertisements
Ähnliche Präsentationen
Service Oriented Architectures for Remote Instrumentation
Advertisements

Die Performance von Webseiten optimieren
Andreas Lill, Fujitsu Technology Solutions GmbH
E-Solutions mySchoeller.com for Felix Schoeller Imaging
H - A - M - L - E - IC T Teachers Acting Patterns while Teaching with New Media in the Subjects German, Mathematics and Computer Science Prof. S. Blömeke,
DNS-Resolver-Mechanismus
Transaction Synchronization for XML Data in Client Server Web Applications Stefan Böttcher & Adelhard Türling Universität Paderborn.
1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH.
Dr. M. Schlottke Common Description of Web Services Source: P. Gerbert, 2002 Web Services allow to establish B2B e-commerce on the fly Web Services allow.
Fakultät für informatik informatik 12 technische universität dortmund Optimizations Peter Marwedel TU Dortmund Informatik 12 Germany 2009/01/17 Graphics:
Fakultät für informatik informatik 12 technische universität dortmund Universität Dortmund Middleware Peter Marwedel TU Dortmund, Informatik 12 Germany.
Fakultät für informatik informatik 12 technische universität dortmund Hardware/Software Partitioning Peter Marwedel Informatik 12 TU Dortmund Germany Chapter.
Zusammenfassung / Ausblick Persistente Domänenmodelle mit JPA 2.0 und Bean Validation.
Regional Support in the context of LCG/EGEE
1 Geistes-, Natur-, Sozial- und Technikwissenschaften – gemeinsam unter einem Dach The Academic Information Domain DGI Top-Tech-Trends Panel 2010 Dr. Wolfram.
Lehrstuhl Informatik III: Datenbanksysteme AstroGrid-D Meeting Heidelberg, Informationsfusion und -Integrität: Grid-Erweiterungen zum Datenmanagement.
Introduction to BOS Supplier Guidelines v6
CTS2 based Terminology Server – Overview – Project eBPG
Status eSciDoc Malte Dreyer eSciDoc Hauptaktivitäten in 2006 Abstimmung mit den Zielgruppen Funktionale Anforderungserhebung mit.
5 Jahre Semantic Network Service (SNS) Aktueller Stand und Ausblick Maria Rüther, Thomas Bandholtz,
Referent: Thomas Thalmann, Manager Products & Services xxxxx EXPERTENTREFFEN | NETWORKING | BEST PRACTICE | KNOW-HOWSpeichermigration Simple like a SnapshotSimple.
Integration of renewable energies: competition between storage, the power grid and flexible demand Thomas Hamacher.
Copyright 2010 LB-systems Meßgeräte GmbH Highlights Nov 2010 Frankfurt Nov 2010 Kopenhagen.
Microsoft Office Forms Server
Institut AIFB, Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Towards Automatic Composition of Processes based on Semantic.
Lehrstuhl Technische Informatik - Computer Engineering Brandenburgische Technische Universität Cottbus 1 Hierarchical Test Technology for Systems on a.
Sanjay Patil Standards Architect – SAP AG April 2008
Calendar Week 40 Gunnar Beutner. Bug Tracker Hi zusammen, bei der Vorbereitung auf das Meeting ist mir folgende aufgefallen bzw. unklar: - # Ich.
| DC-IAP/SVC3 | © Bosch Rexroth Pneumatics GmbH This document, as well as the data, specifications and other information set forth in.
Vergleich der verschiedenen kommerziellen Datenbanksysteme
DATA WAREHOUSE Oracle Data Warehouse Mit Big Data neue Horizonte für das Data Warehouse ermöglichen Alfred Schlaucher, Detlef Schroeder DATA WAREHOUSE.
BAS5SE | Fachhochschule Hagenberg | Daniel Khan | S SPR5 MVC Plugin Development SPR6P.
Projekt Alcatraz Java RMI / Spread - Gruppe A4.
© All rights reserved. Zend Technologies, Inc. Jan Burkl System Engineer, Zend Technologies Zend Server im Cluster.
ActionScript 3 (AS3) Workshop für Einsteiger. AS3 WorkshopGregor Sklorz Me Gregor Sklorz o Dipl. Ing. der Medieninformatik o Geb: o Stepstones:
| Basel Von der SharePoint Taskliste zum gemanagten Project in Project Server Luca Argentiero Solution Specialist Microsoft
Technische Universität München Fakultät für Informatik Transactions AND Analytics OLTP AND OLAP in Main Memory Database Systems HyPer one size fits all...
Bundesamt für Wehrtechnik und Beschaffung THE COST EFFECTIVE DEVELOPMENT OF HLA FEDERATIONS FOR COMPUTER- ASSISTED EXERCISES (CAX) K. Pixius 23-Sep-02.
The free XML Editor for Windows COOKTOP Semistrukturierte Daten 1 Vortrag Semistrukturierte Daten 1 COOKTOP The free XML-Editor for Windows
Gameplay Systems I Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung SS 2012 Prof. Dr. phil. Manfred Thaller Referent: Christian Weitz.
Developer Day Webseiten auf Windows Azure hosten Britta Labud bbv Software Services AG Roland Krummenacher bbv Software Services AG.
Windows Azure Websites Roland Krummenacher Senior Software Engineer, bbv Software Services
Frank Fischer + Bernhard Frank Microsoft Deutschland GmbH.
Quelle: Standish Group, 2006 Fourth Quarter Research Report, CHAOS Research Results.
3/28/2017 8:11 PM Visual Studio Tools für Office { Rapid Application Development für Office } Jens Häupel Platform Strategy Manager Microsoft Deutschland.
Department of Computer Science Homepage HTML Preprocessor Perl Database Revision Control System © 1998, Leonhard Jaschke, Institut für Wissenschaftliches.
INTAKT- Interkulturelle Berufsfelderkundungen als ausbildungsbezogene Lerneinheiten in berufsqualifizierenden Auslandspraktika DE/10/LLP-LdV/TOI/
XML IV: Cocoon 2.
Algorithm Engineering Parallele Algorithmen Stefan Edelkamp.
Algorithm Engineering Parallele Algorithmen Stefan Edelkamp.
DATA WAREHOUSE Oracle Data Warehouse Mit Big Data neue Horizonte für das Data Warehouse ermöglichen Alfred Schlaucher, Detlef Schroeder DATA WAREHOUSE.
Virtual Earth Visualisierung von Geodaten Daniel Walzenbach, Microsoft Deutschland GmbH
Univ.-Lektor Dipl.-Ing. Dr. Markus Schranz staatlich befugter und beeideter Ingenieurkonsulent für Informatik Web Application Engineering & Content Management.
Digital Dashboard Toolkit 2001 SharePoint Portal Server released targeting portal market SharePoint Team Services (STS) released as free add-
Windows Azure VMs und Storage
Informations-Forum: SAP Interoperabilität
Microsoft Cloud Day Herzlich willkommen!. Microsoft Cloud Day MSDN Veranstaltung Die Cloud Plattform als Erfolgsbaustein – Wie Sie als Softwarefirma von.
RZPD Deutsches Ressourcenzentrum für Genomforschung GmbH DESPRAD-Meeting 02/09/2003 Steffen Schulze-Kremer (until 7/2003) Bernd Drescher (since 8/2003)
Lehrstuhl für Waldbau, Technische Universität MünchenBudapest, 10./11. December 2006 WP 1 Status (TUM) Bernhard Felbermeier.
Technische Universität München 1 CADUI' June FUNDP Namur G B I The FUSE-System: an Integrated User Interface Design Environment Frank Lonczewski.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Bachelor & Master Theses in Computer Networks No Lecture
Structure of architecture documentation
.....wolken über dem rechenzentrum cloud computing.
Data Mining Spectral Clustering Junli Zhu SS 2005.
Software Architektur für on-premise und die Cloud Lösungen
Premiere Conferencing GmbH
Ferrite Material Modeling (1) : Kicker principle
OFFICE 365 FOCUS SESSION SHAREPOINT ONLINE 101:LERNE DIE BASICS 19. März 2018 Höhr-Grenzhausen.
Computer Services Business challenge
Azure Mobile Services Deep dive into node.js scripting
 Präsentation transkript:

Prof. Dr. Stefan Edlich NoSQL in der Cloud

nosqlberlin.de nosqlfrankfurt.de nosql powerdays

http://nosql-database.org

NoSQL is specialization! Big Data Massive Write Performance Fast KV Access Write Availability Flexible Schema (Migration) + Flexible Datatypes Easier maintainability, administration and operations No single point of failure Programmer ease of use

Theorie?! Map/Reduce  Map/Reduce Nachfolger! ACID / BASE & CAP  P liegt in der Regel nie vor! Consistent Hashing  Basis skalierbarer K/V Stores MVCC  non blocking Vorteile Vector Clocks  [122:1] [147:2|122:1] [97:3|147:2|122:1]

Schnittstellen REST Language API Thrift/Avro Map/Reduce Get/Put Datenmodell Column Family DocumentDB Key / Value Graph Persistenz Disk Full Memory Hybrid Pluggable

Google Protocol Buffers =>

Apache Avro! JSON Binary data transfer automatic RPC generation no code generation Client + Server tauschen Schema bei Änderung unbedingt evaluieren!

Datenmodelle

Column Family DocumentDBs Key/ValueDBs GraphDBs andere Voldemort, Chordless, Scalaris, Dynamo / Dynomite Key/ValueDBs GraphDBs db4o, Versant, Objectivity, Gemstone, Progress, Mark Logic, EMC Momentum, Tamino, GigaSpaces, Hazelcast, Terracotta, … andere

HBase Cassandra SimpleDB

+ Skalierung = new node + Community + API - Replikation - Aufsetzen, Optimierung, Wartung + Konfiguration (r, w) - Dokumentation - Abfragen + stressfreie SaaS Lösung + transparent scaling - UTF-8 String - Daten liegen bei Amazon +- kein tuning / config

Document Databases

any JS-Client no Middleware! DB+WebServer +evolving App

2.Runde += 6,5 Mio $ http://highscalability.com/blog/2010/10/15/troubles-with-sharding-what-can-we-learn-from-the-foursquare.html

nicht normalisiert (Duplicates, Delete Orphans, ...) (konfigurierbare Zeit Crash anfällig) (Journaling) Eventually Consistent echte Skalierung nur über Sharding - (noch nicht kill -9 fest)

EC2 Node 66 GB EC2 Node 66 GB 67 GB Index  Data  http://highscalability.com/blog/2010/10/15/troubles-with-sharding-what-can-we-learn-from-the-foursquare.html 11 hours + 1 day off

+ nicht normalisiert + Schema Agilität + Doku exzellent + Speed (MemMapped Files) + Installation+save =28 sek! + beliebige Indizes + MapReduce + Rich Query Language + GridFS (statt HDFS) + einfache Replizierung (Master-Slave / Replica Sets)

db.system.indexes.find(); db.friends.getIndexes(); db.friends.ensureIndex({friend: 1}); db.friends.ensureIndex({friend: 1, zip: 1}); //compound db.friends.find({friend: „Mario“, zip: „13755“}).explain(); Queries: age: {$gt: 10} food:{$all: [„pizza“, „noodles“]} $gt, $lt, $lte, $ne, $in, $nin, $mod, $all, $size, $exists, $type, , $or, $elem, $elemMatch, regexp, ... NoSQL Query LockIn?!

Sich veränderndes Schema Migrations Architektur-Pattern: A) Blacklist rename try { ... } catch (FirstException | SecondException ex) { // newName = BlackList.checkName(OldName)} 

B) „Rails“ Migration new name new name new name new name old name (nicht wenn zu oft repliziert)

Duplikate = Space Aktualität der Daten „Pre-Joined“ Daten! „pre-computeD“ wachsende Daten raus oder Pre-SPACED

In die Cloud…

64 bit [extra | double | quadrupel] Large Clients mongos ROUTER Config Servers Replica Set Shard A Shard B Shard C RAM+ DISK+ POSSIBLE ARBITER micro 64 bit [extra | double | quadrupel] Large

Erfahrungen… RAID Konfigurationen (00,01,10,03,05, …) Journaling-Dateisysteme (ext4, xfs, …) (Security) Ports, F-Deskriptoren, Snapshots,… www.mongodb.org/display/DOCS/Amazon+EC2 Postgres & Cassandra

K/V-Stores + sehr schnell > 100.000 /sek + konfigurierbarer Disc sync + API für eigene Anbindung + einfache Replikation + hash, list, set, sorted set, messages + Installation UNIX: 38 sek Windows: 18 sek - cloud-cluster erst in Version 3.* Datenstrukturen abbilden ->

Sorted Set

memcached API

simply dynamic scaling (up & down) scales linear bullet proof by Zynga.com limited membase protocol Membase Tap (Protocol Interception) Code-Node:

Membase in der Cloud Fertige RightScale & AMI templates Diverse Ports öffnen DNS Eintrag und keine verändernden IPs Master Node angeben legt Quota für die Erben fest Backups für EBS

GraphDBs Property Graph

player Neo4j, OrientDB, Sones, Infinite-Graph, MS-Trinity, HyperGraphDB, Inf-Grid, Dex, VertexDB, Filament, HyperGraphDB, Allegro Graph, Bigdata, Open-Link-Virtuoso, VertexDB, FlockDB

Graph DBs in der Cloud > N Milliarden Knoten? Sharding! aber meistens kein „predictable lookup“  möglich nur bei Domain Specific Knowledge ausbalancierte DBs ohne sweet spots kaum möglich Access Patterns + Heuristiken (Insert Sharding / Runtime Sharding) => partitionierungs Algorithmen (HA) Neo4j Cache Sharding! Multi-Master Cluster for Consistent Routing

> 220 DBs durchaus frustrierendes Consulting…

other Non-Functional Requirements Data Transactions Performance Queries Architecture other Non-Functional Requirements

Data- / Storage-Model: Analyse your Data Domain-Data, Log-Data, Event-Data, Message-Data, critical Data, Business-Data, Meta-Data, temp Data, Session-Data, Geo Data, etc. Data- / Storage-Model: relational, column-o, doc-alike, graphs, objects, etc. What Types / Type-System? Data-Navigation, Data Amount, Data Komplexity (Deep XML?) ACID vs. BASE vs. Mixture? CAP decisions Performance Dimension Analysis Latency, Request behaviour, Throughput Scale-Up vs Scale-Out Query Requirements Typical queries, Tools, Ad-Hoc Queries, SQL / LINQ needed, Map/Reduce? … Distribution Architecture local, parallel, distributed / grid, service, cloud, mobile, p2p, … Data Access Patterns read / write distribution, random / sequential, Access Design Patterns Non Functional Requirements: Replication, Refactoring Frequency, DB-Support, Qualification / simplicity, Company restrictions, DB diversity (allowed?), Security, Safety / Backup & Restore, Crash Resistance, Licence…

NoSQL FAZIT

Unbedingt RAM & SDD annehmen! RethinkDB Gustavo Alonso Lot‘s of >1 PT RAM DBs in California! SAP-Strategie? Service, RAM, Cloud, Mobile

DaaS Zeitalter Amazon statt 225 Mio $ nur 90 Mio $ Alleine für MongoDB weit über 100 „Database-as-a-Service“ Provider! Amazon: SimpleDB, Hadoop, etc.

Viele clevere hybrid Lösungen! CouchBase, Hadoop+MySQL

Availability Ad Hoc Query OLAP Database-aaS => best Mix!

unkritische Daten kritische Daten Management Analytics (View, Domain, Stamm, Meta, Log, …) by Couch, MongoDB, Redis, Membase, … unkritische Daten kritische Daten Management Zahlungsdaten, persönliche Daten, … by classic RDBMS, Vertica, VoltDB, Database.com, GenieDB, … Hadoop* BI OLAP BI Analytics Dwight Merriman (10gen)

Links nosql-database.org nosqltapes.com mynosql.com .com

Thanks for listening! http://edlich.de Diskussion!

funktionale (graph) Dekomposition? Oder… Schutzpatent  Group By Uralt, Lisp, Use Case: Aggregate pi -> 1015 -> 1000 cluster

„A giant step back! Imcompatible, missing features, not new, …“ Programmierung top! Programmierung nervt! herrlich paralellisierbar Nur `large data indexing` „A giant step back! Imcompatible, missing features, not new, …“ Stonebraker Starke Konkurrenz: Stratosphere (TUB), ePic, SwissBox, etc.

=> Paralellization Contracts compile, analyze, optimize Cross Paralellization Contracts Map Match CoGroup Reduce Graph Ops u.v.m… => compile, analyze, optimize auf einer atmenden Cloud!

Eventually Consistent ACID WATER (basically available, soft state, eventually consistent) BASE Amazon Dynamo MySQL Replikation

Consistency Models © Wilfried Springer NoSQL Rollercoaster

CAP Theoreme Pick 2! System is always ‘ on‘ Clients find replicas Availability Partition Tolerance Consistency System is always ‘ on‘ Clients find replicas Pick 2! Klassiker NoSQL ACID / Isolation Clients see equal data

„Don‘t throw C away so easy! It‘s complex.“ What you really have is: Application errors Repetable DBMS errors Unrepeatable DBMS errors Operating System errors Hardware failure in cluster Network partition in local cluster A disaster WAN failure http://cacm.acm.org/blogs/blog-cacm/83396-errors-in-database-systems-eventual-consistency-and-the-cap-theorem/fulltext http://news.ycombinator.com/item?id=1817731

6 = Network Partition is rare 3,4,5,6 is mostly a Single Node Algorithms can help! „give up P rather than sacrificing C. Use VoltDB or NimbusDB”

Consistent Hashing ausfallsicher  leicht erweiterbar  W = 2*W KNOTEN REPLIKAT 2 M N,O 8 N O,P 10 O P,Q 17 P Q,R 22 Q R,M 26 R M,N M:[0,5) R:[25,30) N:[5,10) Q:[20,25) Altbekannt seit 1997 in Web-Servern O:[10,15) P:[15,20) ausfallsicher  leicht erweiterbar  gut verteilt / vnodes  W = 2*W R = 1*R

Multi Version Concurrency Control MVCC Multi Version Concurrency Control Bei allen relationalen DBs längst drin pessimistisches Locking?

Vector Clocks => Anna Paul Laura laufen A:1 L:1 surfen P:1 L:1