SlideShare a Scribd company logo
1 of 17
1
Today‟s Talk
• 10gen
• MongoDB
• Real World Applications / Use Cases
• Community




                                  2
10gen
• 10gen began the MongoDB project
• Development, support, and services
• ~125 employees
• New York, Palo Alto, London, Dublin
• $31M+ funding (last round, Sept 2011)
• Investors: Sequoia, Flybridge, Union Square




                                  3
MongoDB
MongoDB is a scalable, high-performance
open source NoSQL database
  • Document-Oriented Storage
  • Replication and High Availability
  • Auto-Sharding
  • Fast In-Place updates
  • Ad-hoc Querying
  • Full index support
  • Map/Reduce
Database Landscape

                            Memcached
Scalability & Performance




                               Key / Value




                                                               RDBMS




                                      Depth of functionality
What‟s a document anyway?

doc =
{
  author : "roger",
  date : "Sat Jul 24 2010 19:47:11 GMT-0700 (PDT)",
  text : "Spirited Away",
  tags : [ "Tezuka", "Manga" ],
  comments : [
          {
                    author : "Fred",
                    date : "Sat Jul 24 2010 20:51:03 GMT-0700 (PDT)",
                    text : "Best Movie Ever"
          }
  ]
}
Atomic Updates
• $set, $unset, $inc, $push, $pull, …


> comment = { author: “john”,
             date: new Date(),
             text: “I didn„t like it so much”}

> db.posts.update( { _id: doc._id },
          $push: {comments: comment} );
Querying
 // find posts tagged with Manga
 > db.posts.find( {tags: “Manga”} )

 // find posts commented on by Fred
 > db.posts.find( {“comments.author” : “Fred” } )

 // Aggregation
 > db.posts.find( {author: „roger‟} ).count()
Query Operators
• Conditional Operators
  • $all, $exists, $mod, $ne, $in, $nin, $nor, $or, $size, $type
  • $lt, $lte, $gt, $gte
  > db.posts.find({tags : {$in : [“Manga”, “animation}]})
• Regular expressions
  > db.posts.find({author: /^r/})
Indexes
 // Index nested documents
 > db.posts.ensureIndex( “comments.author”:1 )
   db.posts.find({„comments.author‟:‟Fred‟})


 // Index on tags
 > db.posts.ensureIndex( tags: 1)
 > db.posts.find( { tags: ‟Manga‟ } )
Replica Sets


       Write
                Primary
       Read
                           Asynchronous
               Secondary   Replication
       Read


               Secondary
       Read
Replica Sets


       Write
                Primary
       Read

               Secondary
       Read


               Secondary
       Read
Replica Sets


                Primary
                           Automatic
                           Leader Election
       Write
                Primary
       Read

               Secondary
       Read
Replica Sets


               Secondary
      Read

       Write
                Primary
       Read

               Secondary
       Read
Write           Read


          MongoS       MongoS        MongoS            MongoS




 Key Range          Key Range         Key Range            Key Range
 -∞..n1, n6..n7     n1..n2, n7..n8    n3..n4, n8..n9       n5..n6, n9..∞




 Primary            Primary           Primary              Primary


Secondary          Secondary         Secondary            Secondary


Secondary          Secondary         Secondary            Secondary
MongoDB Use Cases



                 Content
  Analytics                  E-Commerce
               Management




 Advertising     Gaming     Social Network
Community
•   MongoDB Days
    •   23+ MongoDB Days reaching
        over 10,000 people annually
    •   MongoNYC May 23rd
    •   MongoBoston in Fall
• MongoDB User Groups
    • 28 cities with MUGs
    • Join Boston MUG
        • http://bit.ly/BostonMUG
• User Forum
    • http://bit.ly/mongodb-user
    • 15,000+ questions answered
• Office Hours
    • Coming soon… Suggestions?


                                      17

More Related Content

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 

Featured

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 

Technical Introduction to MongoDB

  • 1. 1
  • 2. Today‟s Talk • 10gen • MongoDB • Real World Applications / Use Cases • Community 2
  • 3. 10gen • 10gen began the MongoDB project • Development, support, and services • ~125 employees • New York, Palo Alto, London, Dublin • $31M+ funding (last round, Sept 2011) • Investors: Sequoia, Flybridge, Union Square 3
  • 4. MongoDB MongoDB is a scalable, high-performance open source NoSQL database • Document-Oriented Storage • Replication and High Availability • Auto-Sharding • Fast In-Place updates • Ad-hoc Querying • Full index support • Map/Reduce
  • 5. Database Landscape Memcached Scalability & Performance Key / Value RDBMS Depth of functionality
  • 6. What‟s a document anyway? doc = { author : "roger", date : "Sat Jul 24 2010 19:47:11 GMT-0700 (PDT)", text : "Spirited Away", tags : [ "Tezuka", "Manga" ], comments : [ { author : "Fred", date : "Sat Jul 24 2010 20:51:03 GMT-0700 (PDT)", text : "Best Movie Ever" } ] }
  • 7. Atomic Updates • $set, $unset, $inc, $push, $pull, … > comment = { author: “john”, date: new Date(), text: “I didn„t like it so much”} > db.posts.update( { _id: doc._id }, $push: {comments: comment} );
  • 8. Querying // find posts tagged with Manga > db.posts.find( {tags: “Manga”} ) // find posts commented on by Fred > db.posts.find( {“comments.author” : “Fred” } ) // Aggregation > db.posts.find( {author: „roger‟} ).count()
  • 9. Query Operators • Conditional Operators • $all, $exists, $mod, $ne, $in, $nin, $nor, $or, $size, $type • $lt, $lte, $gt, $gte > db.posts.find({tags : {$in : [“Manga”, “animation}]}) • Regular expressions > db.posts.find({author: /^r/})
  • 10. Indexes // Index nested documents > db.posts.ensureIndex( “comments.author”:1 )  db.posts.find({„comments.author‟:‟Fred‟}) // Index on tags > db.posts.ensureIndex( tags: 1) > db.posts.find( { tags: ‟Manga‟ } )
  • 11. Replica Sets Write Primary Read Asynchronous Secondary Replication Read Secondary Read
  • 12. Replica Sets Write Primary Read Secondary Read Secondary Read
  • 13. Replica Sets Primary Automatic Leader Election Write Primary Read Secondary Read
  • 14. Replica Sets Secondary Read Write Primary Read Secondary Read
  • 15. Write Read MongoS MongoS MongoS MongoS Key Range Key Range Key Range Key Range -∞..n1, n6..n7 n1..n2, n7..n8 n3..n4, n8..n9 n5..n6, n9..∞ Primary Primary Primary Primary Secondary Secondary Secondary Secondary Secondary Secondary Secondary Secondary
  • 16. MongoDB Use Cases Content Analytics E-Commerce Management Advertising Gaming Social Network
  • 17. Community • MongoDB Days • 23+ MongoDB Days reaching over 10,000 people annually • MongoNYC May 23rd • MongoBoston in Fall • MongoDB User Groups • 28 cities with MUGs • Join Boston MUG • http://bit.ly/BostonMUG • User Forum • http://bit.ly/mongodb-user • 15,000+ questions answered • Office Hours • Coming soon… Suggestions? 17