AWS TechWorkshop DynamoDB / Customer Presentation: Infopark AG

Preview:

DESCRIPTION

Why we've chosen the new DynamoDB as our cloud database

Citation preview

Berlin, 2012-03-07

AWS TechWorkshop DynamoDB

Customer Presentation:Infopark AG

Great Websites run InfoparkWeb-Sites for large-scale companies

Founded 1994 in Berlin

CMS and CRM in the cloud

HistoryHow we made it to the cloud …

AZ 1

System Architecture

EC2 App Server

AZ 2

EC2 App Server

AZ 3

EC2 App Server

Elastic Load Balancer

MySQL DB Master

MySQL Master- Master

SQL databases are not built for the cloud.

Bottleneck

Doesn‘t scale

Single point of failure

Adding new Replicas

Consistent backups

Recovery times after crashes

Database(Choose wisely)

Kudos to http://blog.nahurst.com/visual-guide-to-nosql-systems

Comparision

A

C P

Availability: Each client can always read and write

Consistency: All clients always get

the same data

Partition Tolerance: System works despite

network splits

Pick Two

RelationalKey-valueColumn-oriented/TabularDocument-oriented

DynamoDBCassandraSimpleDBCouchDBRiak

RDBMS(MySQL, Oracle, …)

MongoDB,Redis,Bigtable

NoSQL - So many choices …

MongoDB

Riak

CouchDB

BigCouch

Redis

Cassandra

… remember that you have to run all of these on EBS :-(

MongoDB

Advantages

Auto-Sharding

Good performance

Dynamic query interface

Disadvantages

Global Write-Lock

No automatic rebalancing, Master-Slave-Replicationw/ Auto Failover

Redis

Advantages

Performance (in-memory)

Transactions

Disadvantages

Only Master-Slave-Replication

Limited by memory

Cassandra

Advantages

Automatic Replication and Rebalancing (N,R,W)

Secondary Indices

Disadvantages

Writes are faster than reads

Bad scaling for 2nd indexes

Super-complex to handle

Riak

Advantages

Automatic Replication and Rebalancing (N,R,W)

Secondary Indices

Large Blobs

Map/Reduce

Disadvantages

InnoDB Backend, slow writes

CouchDB

Advantages

Bidirectional replication

Crash Only-Design

Changes Feed

Views via JS Map Reduce

Disadvantages

Serialized Writes

Sharding/Rebalancing only with BigCouch

Our History

We started with Bigcouch

Switched to CouchDB

Considered Riak

… and now went to DynamoDB

Management-Intense

They are all very …

http://highscalability.com/blog/2012/1/24/the-state-of-nosql-in-2012.html

Any system that you pick will require 24-7 operational support. If it is not hosted (e.g. by AWS), be prepared to hire a fleet of ops folks to support it yourself. If you don’t have the manpower, I recommend AWS' DynamoDB.

– Siddharth Anand, LinkedIn

AZ 1

System Architecture today

EC2 App Server

AZ 2

EC2 App Server

AZ 3

EC2 App Server

Elastic Load Balancer

S3Assets

Scalarium

ElasticSearch

DynamoDB

ElasticSearch ElasticSearch

Advantages of DynamoDB

Advantages

Zero Administration

Blazing fast, thanks to SSD

Scalability with one parameter

Fair Pricing

Conclusion

We're switching to DynamoDB as soon as it's available in the EU region

What's missing so far?

Secondary indices

Changes Feed

Out-of-the-box-Backup

Batch PUT/DELETE

Infopark AG • Kitzingstraße 15 • D-12277 Berlin • www.infopark.de • info@infopark.de

thomas.witt@infopark.de+49-151-140690-23

Twitter: @thomas_witt

Thomas Witt

That's a wrap!

Thank you!

Director Product & Business Development