warum nosql?

48
Warum NoSQL? Hinnerk Haardt <[email protected]>

Upload: hinnerk

Post on 19-Jun-2015

835 views

Category:

Documents


0 download

DESCRIPTION

Warum NoSQL? — Woher kommt der Begriff? Welche Vorteile haben NoSQL-Systeme wie Cassandra, MongoDB und CouchDB vor relationalen Datenbanken wie MySQL und PostgreSQL? Kurzvortrag für Einsteiger.

TRANSCRIPT

Page 1: Warum NoSQL?

Warum NoSQL?Hinnerk Haardt <[email protected]>

Page 2: Warum NoSQL?

Not only SQL

Page 3: Warum NoSQL?

SQLStructured Query

Language

Page 4: Warum NoSQL?

Programmiersprache für relationale

Datenbanken

Page 5: Warum NoSQL?

Warum?

Page 6: Warum NoSQL?

Das Internet ist schuld!

Page 7: Warum NoSQL?

1980er: data bank

Page 8: Warum NoSQL?

ACID

Page 9: Warum NoSQL?

• Atomicity — ganz oder gar nicht

• Consistency — gewährleistet Integrität

• Isolation — Kapselung gleichzeitiger T.

• Durability — Persistenz aller Änderungen

Page 10: Warum NoSQL?

»große« Datenbanken

Page 11: Warum NoSQL?

Skalieren vertikal

Page 12: Warum NoSQL?

RAMCPU

Storage

Page 13: Warum NoSQL?

RAMCPU

Storage

Page 14: Warum NoSQL?

RAMCPU

Storage

Page 15: Warum NoSQL?

RAMCPU

Storage

Page 16: Warum NoSQL?

teur

er →

größer →

Page 17: Warum NoSQL?

21. Jh.

Page 18: Warum NoSQL?

Beispiel Facebook

• 30.000 Server

• 25 Terabyte Logdaten täglich

• 300.000.000 Nutzer

• 230 Ingenieure

Page 19: Warum NoSQL?

Das Internet ist schuld.

Page 20: Warum NoSQL?

Horizontal

Page 21: Warum NoSQL?

RAMCPU

Storage

Page 22: Warum NoSQL?

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

Page 23: Warum NoSQL?

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

Page 24: Warum NoSQL?

meh

r D

aten

mehr Durchsatz & höhere Verfügbarkeit →

vertikaleSkalierung

horizontaleSkalierung

Page 25: Warum NoSQL?

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

RAMCPU

Storage

Page 26: Warum NoSQL?

Verfügbarkeit

Page 27: Warum NoSQL?

Sicherheit (ACID)Verfügbarkeitunbegrenztes Wachstum

Page 28: Warum NoSQL?

CAP-Theorem

Page 29: Warum NoSQL?

Consistency

Partition Tolerance

Availability

Page 30: Warum NoSQL?

»in larger distributed-scale systems, network partitions are a given; therefore, consistency and availability cannot be achieved at the same time«

Werner Vogels, Amazon.com

Page 31: Warum NoSQL?

2009: NoSQL

Page 32: Warum NoSQL?

Definition…

Page 33: Warum NoSQL?

»Gruppe nicht konventioneller Datenbanken«

Page 34: Warum NoSQL?

Willkommen im Zoo!

Page 35: Warum NoSQL?

• CouchDB

• MongoDB

• Redis

• Memcachedb

• Tokyo Cabinet

• Google BigTable

• Amazon Dynamo

• Apache Cassandra

• Project Voldemort

• Mnesia (Erlang)

• Hbase (Apache Hadoop)

• Hypertable

• Twitter Gizzard

Page 36: Warum NoSQL?

kein ACID

Page 37: Warum NoSQL?

eingeschränkte Transaktionen

Page 38: Warum NoSQL?

kein »JOIN«

Page 39: Warum NoSQL?

kein SQL

Page 40: Warum NoSQL?

einfach anzusprechen

Page 41: Warum NoSQL?

schemafrei

Page 42: Warum NoSQL?

skaliert horizontal

Page 43: Warum NoSQL?

Replikation

Page 44: Warum NoSQL?

eventual consistency

Page 45: Warum NoSQL?

probabilistic worldview

Page 46: Warum NoSQL?

Amazon's Dynamo

• »applications have received successful responses […] for 99.9995% of its requests«

• »no data loss event has occurred to date« [2007, nach 2 Jahren Betrieb]

Page 47: Warum NoSQL?

Veranstaltung»ACID vs. BASE«

• mehr zu NoSQL, ACID, BASE und dem CAP-Theorem

• Objekt-Stammtisch Kiel

• 27.04.2010 19:00 Uhr

• Eckernförder Straße 20, Kiel (Toppoint)