Your SlideShare is downloading. ×
0
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
2011 05-12 nosql-fritidsresor
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

2011 05-12 nosql-fritidsresor

885

Published on

Brown bag lunch presentation given at TUI / Fritidsresor in Stockholm on approaching and evaluating the NoSQL field.

Brown bag lunch presentation given at TUI / Fritidsresor in Stockholm on approaching and evaluating the NoSQL field.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
885
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • NoSQL tends crammed with religious zealots\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • (No)SQL for me is very much about trade offs\n
  • Don’t underestimate the exercise of making your data “fit” a certain nosql product\n
  • Client libraries?\nDoes it require driver libraries?\n
  • What access patterns do you have today? Tomorrow?\nWhat kind of reports will customers or management require?\n
  • For us at Hitta.se this is important since almost everything we do is HTTP based\n
  • What kinds of availability?\nHow does it handle node failures? Network partitions?\n
  • How and with what?\n
  • Out-of-the-box vs. vertical vs. horizontal?\n
  • What’s required to add additional nodes?\nHow do you remove a node temporarily or permanently?\n
  • And how is the community?\n
  • \n
  • Proper install packages?\nSane defaults in terms of service accounts and privileges?\n
  • Don’t underestimate this\n
  • Is your data really durable on disk -- assuming that’s what you need\n
  • \n
  • \n
  • Transcript

    • 1. NoSQL Mårten GustafsonBrown bag lunch @ TUI / Fritidsresor Stockholm 2011-08-31
    • 2. Not Only SQL
    • 3. Disclaimer I don’t know any and all products by heart I’m trying to illustrate my broad reasoning
    • 4. “NoSQL is a movement promoting a looselydefined class of non-relational data storesthat break with a long history of relationaldatabases” - Wikipedia
    • 5. “NoSQL is a movement promoting a looselydefined class of non-relational data storesthat break with a long history of relationaldatabases” - Wikipedia• Not one single technique
    • 6. “NoSQL is a movement promoting a looselydefined class of non-relational data storesthat break with a long history of relationaldatabases” - Wikipedia• Not one single technique• Not one type of data
    • 7. “NoSQL is a movement promoting a looselydefined class of non-relational data storesthat break with a long history of relationaldatabases” - Wikipedia• Not one single technique• Not one type of data• Not one type of use case
    • 8. “NoSQL is a movement promoting a looselydefined class of non-relational data storesthat break with a long history of relationaldatabases” - Wikipedia• Not one single technique• Not one type of data• Not one type of use case
    • 9. Example reasoning“...so our RDBMS is a SPoF that won’t scale”
    • 10. Example reasoning“...so our RDBMS is a SPoF that won’t scale” move to? Multi-master
    • 11. Example reasoning“...so our RDBMS is a SPoF that won’t scale” move to? Multi-master sacrifices? Atomicity
    • 12. Example reasoning“...so our RDBMS is a SPoF that won’t scale” move to? Multi-master sacrifices? gives? Atomicity Distribution / replication
    • 13. Example reasoning“...so our RDBMS is a SPoF that won’t scale” requires? move to?De-normalization Multi-master sacrifices? gives? Atomicity Distribution / replication
    • 14. Example reasoning“...so our RDBMS is a SPoF that won’t scale” requires? move to?De-normalization Multi-master dissolves? sacrifices? gives? Integrity Atomicity Distribution / replication
    • 15. Example reasoning“...so our RDBMS is a SPoF that won’t scale” requires? move to?De-normalization Multi-master dissolves? sacrifices? gives? IntegrityQuerying toughens? Atomicity Distribution / replication
    • 16. There is no free lunch.
    • 17. Key aspects
    • 18. Key aspects• Type of data
    • 19. Key aspects• Type of data • Graph
    • 20. Key aspects• Type of data • Graph • Documents & key/value-pairs
    • 21. Key aspects• Type of data • Graph • Documents & key/value-pairs• Operational aspect
    • 22. Key aspects• Type of data • Graph • Documents & key/value-pairs• Operational aspect • Resilient
    • 23. Key aspects• Type of data • Graph • Documents & key/value-pairs• Operational aspect • Resilient • Atomic
    • 24. Example Atomic Resilient Neo4J Graph ? InfiniteGraph CouchDB Riak Document & RavenDB Voldemortkey/value-paris Redis Cassandra
    • 25. Sample cases
    • 26. Case A: Data from user• Data set... • ...mix of binary & JSON (access by known key) • ...replicated to all nodes on best effort • ...allows read & write on any node • individual nodes may be unavailable
    • 27. Case A: Data from user Atomic Resilient Neo4J Graph ? InfiniteGraph CouchDB Riak Document & RavenDB Voldemortkey/value-pairs Redis Cassandra
    • 28. Case A: Data from user• Riak due to... • outstanding packaging & community • simple on both server and workstations • serious and dedicated engineering team • Lots of statistics • HTTP API • Everything’s tunable (much per request)
    • 29. Case B: configuration• Data set... • ...is JSON(access by alternating keys) • ...on all nodes • ...seldom updated (read only) • ...consistent and replicated on demand
    • 30. Case B: configuration Atomic Resilient Neo4J Graph ? InfiniteGraph CouchDB Riak Document & RavenDB Voldemortkey/value-pairs Redis Cassandra
    • 31. Case B: configuration• CouchDB due to... • simple on both server and workstations • HTTP API • Views for alternating keys • Lots of statistics • Dead simple “one-click” push replication
    • 32. priorities & trade-offs
    • 33. does it fit with current data structures?
    • 34. ease of adoption?
    • 35. search and reporting?
    • 36. does it speak HTTP?
    • 37. availability and redundancy?
    • 38. can you monitor it?
    • 39. performance?
    • 40. ease of scaling in and out?
    • 41. commercial support available?
    • 42. does it run on your preferred OS?
    • 43. is it properly packaged?
    • 44. do you understand it?
    • 45. is your data safe?
    • 46. there is no universal solution
    • 47. Thx.Mårten Gustafson@martengustafsonhttp://marten.gustafson.pp.se/marten.gustafson@gmail.com

    ×