Successfully reported this slideshow.

Breaking the Relational Headlock: A Survey of NoSQL Datastores

3,040 views

Published on

As presented at SXSW 2012. http://panelpicker.sxsw.com/ideas/view/12722

Published in: Technology, Sports
  • Be the first to comment

Breaking the Relational Headlock: A Survey of NoSQL Datastores

  1. http://www.flickr.com/photos/fpat/3328595063/Gary Dusbabek
  2. Full Disclosure:I work on Apache Cassandra. http://www.flickr.com/photos/vmanso/4040094281/
  3. My Goals For You Should I? How Then? Achtung! http://www.flickr.com/photos/29707865@N05/2780508266/
  4. http://www.flickr.com/photos/marc_smith/6246957472/A Brief History of Databases
  5. http://www.flickr.com/photos/watchsmart/1422274819/
  6. 1960s
  7. New StuffDirect access storageReplaced TapeNew Possibilities http://www.flickr.com/photos/byrion/5264950510/
  8. Navigational Databases (two kinds)
  9. Hierarchical Parent-child
  10. NetworkRelationships Graph
  11. 1970s
  12. Codd
  13. Relational Model Search by content Good for query Demands on processor Rigid, fixed structures Bad for modelinghttp://www.flickr.com/photos/35536700@N07/3292544674
  14. Today
  15. Data needs have changed http://www.flickr.com/photos/franzhaas/6761917637/
  16. Data needs have changed http://www.flickr.com/photos/franzhaas/6761917637/
  17. Technology has changedhttp://www.flickr.com/photos/neosnaps/2574417351/
  18. http://www.flickr.com/photos/katclay/3935629242/ Choosing
  19. ChoosingTechnology is Hard ™ Work .
  20. Can you do it with arelational database?Is your DB falling apart? What do you need?
  21. Where RDBMS Fall ApartScalingSPoFShardingDenormalizingAvailability Slave Systems http://www.flickr.com/photos/horiavarlan/4681206711/
  22. What do you need? Reduced cost Throughput Availability Recoverability Correctness Transactionshttp://www.flickr.com/photos/ell-r-brown/5866777592/ Flexible Schema
  23. What is NoSQL? Flighthttp://www.flickr.com/photos/24277960@N08/2609390563/http://www.flickr.com/photos/taylar/4996955547/http://www.flickr.com/photos/gromgull/611019520/http://www.flickr.com/photos/igboo/2583174998/
  24. What isn’t NoSQL? NoFlighthttp://www.flickr.com/photos/alanvernon/3121751152/http://www.flickr.com/photos/tomsaint/3209482579/http://www.flickr.com/photos/pointnshoot/408384715/http://www.flickr.com/photos/zigazou76/5846255426/
  25. Considerations Fault Tolerance Recovery Replication Access Hooks Distributed
  26. Considerations Data Model Query/Search modelTransactional SemanticsRead vs Write ThroughputDeployment/Management
  27. Focus on a few systems MongoDB Master-Slave RedisFullyDistributed Riak HBase Cassandra http://www.flickr.com/photos/seier/2455551478/sizes/l/in/photostream/
  28. MongoDBDocument OrientedNaturally denormalizedFlexible schema
  29. MongoDBProgrammer friendlyMany language driversAtomic on a single document
  30. MongoDBReal-time datawarehousing/analyticsBlocking/offline compactionComplicated queries
  31. MongoDBdb.foo.find({j: {$ne: 3}, k: {$gt: 10} });db.foo.find( { name : "bob" , $or : [ { a : 1 } , { b : 2 } ] } )
  32. MongoDBMaster-slave replication AsynchronousGives failover & data redundancy But not consistency Only master can receive writesMakes atomic writes easy
  33. Redis Real-time statstracking Wicked fast Collections built in
  34. RedisIn-memorySnapshotsMaster-slaveRAM limited
  35. RiakRelationships, aka “Links”Built-in MapReduceCompletely schemalessNo SPoFScales linearlyTunable consistency
  36. RiakPre- Post-HooksConfigurable storage enginesREST accessEasy cluster balancing
  37. RiakDoesn’t keep data sortedErlang
  38. CassandraQuery languageRange queriesDatacenter/Rack awareHadoop integrationConfigurable cacheingLive schema changes
  39. CassandraSome schemaGrowing cluster isn’t fair
  40. HBaseCoprocessorsVersioned cells (BigTable)Hadoop integration
  41. HBaseHadoopNameNode is SPoFSchema maintenance downtimeSchema required up frontComplicated balancing
  42. http://www.flickr.com/photos/annguyenphotography/3267723713/No Silver Bullet
  43. http://www.flickr.com/photos/nateone/3768979925 / HBase@gdusbabek

×