5 Reasons that made MongoDB the leading NoSQL Database
Upcoming SlideShare
Loading in...5
×
 

5 Reasons that made MongoDB the leading NoSQL Database

on

  • 630 views

A comparison of NoSQL and relational databases and 5 unique MongoDB strengths that have made MongoDB so popular.

A comparison of NoSQL and relational databases and 5 unique MongoDB strengths that have made MongoDB so popular.

Statistics

Views

Total Views
630
Views on SlideShare
544
Embed Views
86

Actions

Likes
3
Downloads
2
Comments
0

2 Embeds 86

https://twitter.com 81
http://www.slideee.com 5

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

5 Reasons that made MongoDB the leading NoSQL Database 5 Reasons that made MongoDB the leading NoSQL Database Presentation Transcript

  • 5 Reasons that made MongoDB the Leading NoSQL Database Henrik Ingo Solutions Architect, MongoDB
  • 2 Hi, I am Henrik Ingo @h_ingo
  • 5 Reasons that made MongoDB the Leading NoSQL Database Henrik Ingo Solutions Architect, MongoDB
  • 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 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.
  • Ok, so what ARE the Top 5 reasons to choose MongoDB?
  • 1. General purpose
  • 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 5 NoSQL categories Key Value Wide Column Document Graph Map Reduce Redis, Riak Cassandra Neo4j Hadoop
  • 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 Most popular NoSQL database
  • 12 Most popular NoSQL database Document Wide Column Wide Column KV KV Graph DocumentKV KV
  • 13 Hadoop Document Right tool for the right job Column KV Graph
  • 14 Hadoop Right tool for the right job RDBMS . Document Column KV Graph
  • 15 Operational Database Landscape
  • 2. Agile
  • 17 Ease of use Paul Downey (17419636) Easy to use
  • 18 Integrated single binary Chalon Handmade (6206864791) Integrated single binary
  • 19 Replication & sharding Replication & Sharding Daniel Oines (7390222182)
  • 20 mms.mongodb.com/learn-more/automation MMS Automation
  • 21 Schemaless iterative development
  • 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 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 Query language = JSON & JavaScript db.collection.find( { "firstname" : "Henrik" } )
  • 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
  • 3. JSON & JavaScript
  • 27 MEAN stack Express.js
  • 28 MEAN stack Express.js JSON JSON
  • 29 JavaScript JVM stack JVM RDBMS JDBC Spring, Morphia JSON Tomcat, Jetty, Play, Spring... JSON
  • 4. Aggregation Framework
  • 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 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 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 Sharding is a first class citizen db.collection.find( { "firstname" : "Henrik" } ) { $match : ... } { $group : ... } { $sort : ... } DB DB DB Query Router
  • 35 Sharding is a first class citizen db.collection.find( { "firstname" : "Henrik" } ) { results } { $match : ... } { $group : ... } { $sort : ... } { $match : ... } { $group : ... } { $sort : ... } { $match : ... } { $group : ... } { $sort : ... } { $group : ... } { $sort : ... }
  • 5. Ecosystem
  • 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 MongoDB Partners (500) Software & Services Cloud & Channel Hardware
  • 39 MongoDB Inc 350+ employees 1,000+ customers Over $231 million in funding13 offices around the world
  • Summary
  • 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 1. General purpose 2. Agile 3. JSON & JavaScript 4. Aggregation framework 5. Ecosystem Top 5 reasons to choose MongoDB