Comparision Availability: Each client can always Relational read and write Key-value A Column-oriented/Tabular Document-oriented DynamoDB RDBMS Cassandra (MySQL, SimpleDB Oracle, …) CouchDB Riak Pick Two C Consistency: Allclients always get MongoDB, Redis, P Partition Tolerance: System works despite Bigtable the same data network splits Kudos to http://blog.nahurst.com/visual-guide-to-nosql-systems
NoSQL - So many choices … MongoDB Riak CouchDB BigCouch Redis Cassandra… remember that you haveto run all of these on EBS :-(
MongoDBAdvantages Auto-Sharding Good performance Dynamic query interfaceDisadvantages Global Write-Lock No automatic rebalancing, Master-Slave-Replication w/ Auto Failover
RedisAdvantages Performance (in-memory) TransactionsDisadvantages Only Master-Slave- Replication Limited by memory
CassandraAdvantages Automatic Replication and Rebalancing (N,R,W) Secondary IndicesDisadvantages Writes are faster than reads Bad scaling for 2nd indexes Super-complex to handle
RiakAdvantages Automatic Replication and Rebalancing (N,R,W) Secondary Indices Large Blobs Map/ReduceDisadvantages InnoDB Backend, slow writes
CouchDBAdvantages Bidirectional replication Crash Only-Design Changes Feed Views via JS Map ReduceDisadvantages Serialized Writes Sharding/Rebalancing only with BigCouch
Our HistoryWe started with BigcouchSwitched to CouchDBConsidered Riak… and now went toDynamoDB
“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 ﬂeet of ops folks to support it yourself. If you don’t have the manpower, I recommend AWS DynamoDB. – Siddharth Anand, LinkedInhttp://highscalability.com/blog/2012/1/24/the-state-of-nosql-in-2012.html
System Architecture today Elastic Load Balancer AZ 3 AZ 1 AZ 2 Scalarium EC2 App Server EC2 App Server EC2 App Server S3 Assets ElasticSearch ElasticSearch ElasticSearch DynamoDB
Advantages of DynamoDB Advantages Zero Administration Blazing fast, thanks to SSD Scalability with one parameter Fair Pricing Conclusion Were switching to DynamoDB as soon as its available in the EU region
Whats missing so far? Secondary indices Changes Feed Out-of-the-box-Backup Batch PUT/DELETE
Thats a wrap! Thank you! Thomas Witt Director Product & Business Development firstname.lastname@example.org +49-151-140690-23 Twitter: @thomas_witt Infopark AG • Kitzingstraße 15 • D-12277 Berlin • www.infopark.de • email@example.com
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.