• Save
Technical Introduction to MongoDB
Upcoming SlideShare
Loading in...5
×
 

Technical Introduction to MongoDB

on

  • 1,958 views

Presented at http://www.meetup.com/emerging-business-technology/events/60978812/

Presented at http://www.meetup.com/emerging-business-technology/events/60978812/

Statistics

Views

Total Views
1,958
Views on SlideShare
1,958
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

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

    Technical Introduction to MongoDB Technical Introduction to MongoDB Presentation Transcript

    • 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
    • MongoDBMongoDB is a scalable, high-performanceopen 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 MemcachedScalability & 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 PrimarySecondary Secondary Secondary SecondarySecondary 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