5 Reasons that made MongoDB the Leading NoSQL Database

1,425 views
1,167 views

Published on

For the first time in four decades something new is happening in the database world. Five years ago a multitude of so called NoSQL databases were born to address the Big Data challenge. Data volumes and often also user volumes have grown a hundred or thousand times larger compared to what we were dealing with just one decade ago. Also the data has evolved to be more complex and more heterogeneous, and it doesn't easily fit into rows and columns anymore.

MongoDB is the leading NoSQL database. The hundreds of thousands of MongoDB clusters out there range from startups and their server side JavaScript architectures to bankers and government officials with their Java stacks. In this talk we will explore 5 features that made MongoDB stand out from the NoSQL crowd.




Henrik Ingo - About the Speaker

Henrik Ingo is a MongoDB Solutions Architect based in Helsinki and leads the Telecom Solution Architecture team. Prior to MongoDB he worked as a database performance architect at Nokia, and in various roles in MySQL, Sun Microsystems, MariaDB and Galera.

Published in: Technology, Sports
1 Comment
5 Likes
Statistics
Notes
  • First delivered by Henrik at ICT Expo Helsinki on 8 May 2014.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
1,425
On SlideShare
0
From Embeds
0
Number of Embeds
181
Actions
Shares
0
Downloads
41
Comments
1
Likes
5
Embeds 0
No embeds

No notes for slide

5 Reasons that made MongoDB the Leading NoSQL Database

  1. 1. 5 Reasons that made MongoDB the Leading NoSQL Database Henrik Ingo Solutions Architect, MongoDB
  2. 2. 2 Hi, I am Henrik Ingo @h_ingo
  3. 3. 5 Reasons that made MongoDB the Leading NoSQL Database Henrik Ingo Solutions Architect, MongoDB
  4. 4. 4 1. Open Source 2. Replication 3. Sharding 4. Schemaless 5. Cloud, Big Data... 5 MongoDB features that are NOT reasons to choose MongoDB
  5. 5. 5 1. Open Source 2. Replication 3. Sharding 4. Schemaless 5. Cloud, Big Data... Reasons to move FROM relational TO NoSQL ...all NoSQL Databases do this.
  6. 6. Ok, so what ARE the Top 5 reasons to choose MongoDB?
  7. 7. 1. General purpose
  8. 8. 8 1. General Purpose Database Big Data Product & Asset Catalogs Security & Fraud Internet of Things Database-as-a- Service Mobile Apps Customer Data Management Data Hub Social & Collaboration Content Management Intelligence Agencies Top Investment and Retail Banks Top US Retailer Top Global Shipping Company Top Industrial Equipment Manufacturer Top Media Company Top Investment and Retail Banks
  9. 9. 9 5 NoSQL categories Key Value Wide Column Document Graph Map Reduce Redis, Riak Cassandra Neo4j Hadoop
  10. 10. 10 MongoDB is a Document Database MongoDB Rich Queries • Find Paul’s cars • Find everybody in London with a car built between 1970 and 1980 Geospatial • Find all of the car owners within 5km of Trafalgar Sq. Text Search • Find all the cars described as having leather seats Aggregation • Calculate the average value of Paul’s car collection Map Reduce • What is the ownership pattern of colors by geography over time? (is purple trending up in China?) { first_name: ‘Paul’, surname: ‘Miller’, city: ‘London’, location: [45.123,47.232], cars: [ { model: ‘Bentley’, year: 1973, value: 100000, … }, { model: ‘Rolls Royce’, year: 1965, value: 330000, … } } }
  11. 11. 11 Most popular NoSQL database
  12. 12. 12 Most popular NoSQL database Document Wide Column Wide Column KV KV Graph DocumentKV KV
  13. 13. 13 Hadoop Document Right tool for the right job Column KV Graph
  14. 14. 14 Hadoop Right tool for the right job RDBMS . Document Column KV Graph
  15. 15. 15 Operational Database Landscape
  16. 16. 2. Agile
  17. 17. 17 Ease of use Paul Downey (17419636) Easy to use
  18. 18. 18 Integrated single binary Chalon Handmade (6206864791) Integrated single binary
  19. 19. 19 Replication & sharding Replication & Sharding Daniel Oines (7390222182)
  20. 20. 20 mms.mongodb.com/learn-more/automation MMS Automation
  21. 21. 21 Schemaless iterative development
  22. 22. 22 { first_name: ‘Paul’, surname: ‘Miller’, city: ‘London’, location: [45.123,47.232], cars: [ { model: ‘Bentley’, year: 1973, value: 100000, … }, { model: ‘Rolls Royce’, year: 1965, value: 330000, … } } } Flexible Schema
  23. 23. 23 Rich query language = less code MongoDB Rich Queries • Find Paul’s cars • Find everybody in London with a car built between 1970 and 1980 Geospatial • Find all of the car owners within 5km of Trafalgar Sq. Text Search • Find all the cars described as having leather seats Aggregation • Calculate the average value of Paul’s car collection Map Reduce • What is the ownership pattern of colors by geography over time? (is purple trending up in China?) { first_name: ‘Paul’, surname: ‘Miller’, city: ‘London’, location: [45.123,47.232], cars: [ { model: ‘Bentley’, year: 1973, value: 100000, … }, { model: ‘Rolls Royce’, year: 1965, value: 330000, … } } }
  24. 24. 24 Query language = JSON & JavaScript db.collection.find( { "firstname" : "Henrik" } )
  25. 25. 25 Real life agility Customer Project RDBMS MongoDB 360O customer view $22M 2 years Failed Minimal 90 days In production Subscriber database 20 tables 35 joins login = 5 joins high latencies 15 months 20 persons 5 collections 2 queries login = 1 query 10x faster 4 months 10 persons eCommerce analytics prototyped only perf challenges prototype in 1 week good perf http://www.mongodb.com/lp/whitepaper/quantifying-business-advantage
  26. 26. 3. JSON & JavaScript
  27. 27. 27 MEAN stack Express.js
  28. 28. 28 MEAN stack Express.js JSON JSON
  29. 29. 29 JavaScript JVM stack JVM RDBMS JDBC Spring, Morphia JSON Tomcat, Jetty, Play, Spring... JSON
  30. 30. 4. Aggregation Framework
  31. 31. 31 OpenStreetMap data as JSON db.collection.find( { "firstname" : "Henrik" } ) { "_id" : 98684990, "addr:housenumber" : "4", "website" : "http://www.ravintolapohjanpoika.fi/", "amenity" : "pub", "addr:city" : "Helsinki", "addr:postcode" : "00770", "location" : { "type" : "Point", "coordinates" : [ 25.0760622, 60.261145 ] }, "addr:street" : "Jakomäenkuja", "addr:country" : "FI", "name" : "Pohjanpoika" } http://rosslawley.co.uk/posts/the-most-popular-pub-name/
  32. 32. 32 OpenStreetMap data as JSON db.collection.find( { "firstname" : "Henrik" } ) db.pubs.aggregate( [ { $match : { "addr:city" : { $in : [ "Helsinki", "Turku", "Tampere" ] } } }, { $group : { "_id" : "$addr:city", "count" : { "$sum" : 1 } } }, { $sort : { "count" : -1 } } ] ) { "_id" : "Helsinki", "count" : 150 } { "_id" : "Tampere", "count" : 53 } { "_id" : "Turku", "count" : 23 }
  33. 33. 33 Big Data warning: data may be dirty db.collection.find( { "firstname" : "Henrik" } ) db.pubs.find( { "addr:city" : { $exists : false } } ).count() 2291 db.pubs.find( { "addr:city" : { $exists : true } } ).count() 701
  34. 34. 34 Sharding is a first class citizen db.collection.find( { "firstname" : "Henrik" } ) { $match : ... } { $group : ... } { $sort : ... } DB DB DB Query Router
  35. 35. 35 Sharding is a first class citizen db.collection.find( { "firstname" : "Henrik" } ) { results } { $match : ... } { $group : ... } { $sort : ... } { $match : ... } { $group : ... } { $sort : ... } { $match : ... } { $group : ... } { $sort : ... } { $group : ... } { $sort : ... }
  36. 36. 5. Ecosystem
  37. 37. 37 7,000,000+ MongoDB Downloads 150,000+ Online Education Registrants 35,000+ MongoDB Management Service (MMS) Users 30,000+ MongoDB User Group Members 20,000+ MongoDB Days Attendees Global Community
  38. 38. 38 MongoDB Partners (500) Software & Services Cloud & Channel Hardware
  39. 39. 39 MongoDB Inc 350+ employees 1,000+ customers Over $231 million in funding13 offices around the world
  40. 40. Summary
  41. 41. 41 1. Open Source 2. Replication 3. Sharding 4. Schemaless 5. Agile, Cloud, Big Data... 5 MongoDB features that are NOT reasons to choose MongoDB
  42. 42. 42 1. General purpose 2. Agile 3. JSON & JavaScript 4. Aggregation framework 5. Ecosystem Top 5 reasons to choose MongoDB

×