• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
MongoDB Isn't Water
 

MongoDB Isn't Water

on

  • 14,814 views

Slides from my presentation 'MongoDB Isn't Water' from February 2, 2010 at Chicago Ruby. Video available here: http://vimeo.com/9173770

Slides from my presentation 'MongoDB Isn't Water' from February 2, 2010 at Chicago Ruby. Video available here: http://vimeo.com/9173770

Statistics

Views

Total Views
14,814
Views on SlideShare
7,288
Embed Views
7,526

Actions

Likes
21
Downloads
268
Comments
1

16 Embeds 7,526

http://blog.nosqlfan.com 6187
http://nosql.mypopescu.com 1109
http://www.mongodb.org 121
http://blog.dt27.cn 61
http://www.slideshare.net 32
http://translate.googleusercontent.com 3
http://static.slidesharecdn.com 3
http://xianguo.com 2
http://news.uplook.cn 1
http://cache.baiducontent.com 1
http://www.uplook.cn 1
http://sylar.wang.blog.163.com 1
http://control.blog.sina.com.cn 1
http://feed.feedsky.com 1
http://www.twylah.com 1
http://xue.uplook.cn 1
More...

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

11 of 1 previous next

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

    MongoDB Isn't Water MongoDB Isn't Water Presentation Transcript

    • To start: Two Ideas. Thursday, February 4, 2010
    • 1 Thursday, February 4, 2010
    • There are these two young fish swimming along and they happen to meet an older fish swimming the other way, who nods at them and says "Morning, boys. How's the water?" And the two young fish swim on for a bit, and then eventually one of them looks over at the other and goes "What the hell is water?" This is a standard requirement of US commencement speeches, the deployment of didactic little parable-ish stories....The point of the fish story is merely that the most obvious, important realities are often the ones that are hardest to see and talk about. - David Foster Wallace Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • 2 Thursday, February 4, 2010
    • “Ruby is designed to be human-oriented. It reduces the burden of programming. It tries to push jobs back to machines. You can accomplish more tasks with less work, in smaller yet readable code.” - Matz Thursday, February 4, 2010
    • “MongoDB is designed to be human-oriented. It reduces the burden of programming. It tries to push jobs back to machines. You can accomplish more tasks with less work, in smaller yet readable code.” - Banker (after Matz) Thursday, February 4, 2010
    • Which leads to... Thursday, February 4, 2010
    • MongoDB Isn’t Water Thursday, February 4, 2010
    • MongoDB Isn’t Water (It’s for rubyists and other human-oriented devs) Thursday, February 4, 2010
    • document-oriented schema-free high-performance built for scale Thursday, February 4, 2010
    • Demo Thursday, February 4, 2010
    • MongoDB Drivers & Ruby to MongoDB Thursday, February 4, 2010
    • How we Insert * * an anatomy lesson Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • 1. ObjectID generation Thursday, February 4, 2010
    • 1. ObjectID generation 4b6857a0 timestamp Thursday, February 4, 2010
    • 1. ObjectID generation 4b6857a0 7613c3 timestamp machine id Thursday, February 4, 2010
    • 1. ObjectID generation 4b6857a0 7613c3 6709 timestamp machine id process id Thursday, February 4, 2010
    • 1. ObjectID generation 4b6857a0 7613c3 6709 4426b2 timestamp machine id process id counter Thursday, February 4, 2010
    • 2. BSON serialization Type-rich, efficient, general-purpose. Thursday, February 4, 2010
    • 2. BSON serialization Type-rich, efficient, general-purpose. The language of MongoDB. Thursday, February 4, 2010
    • 3. Send on socket Fire and forget. Thursday, February 4, 2010
    • 3. Send on socket Fire and forget. Safe mode for extra assurance Thursday, February 4, 2010
    • Dynamic Queries * * like sql Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • b-tree Indexes * * up to 40 per collection Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Atomic & In-place Updates * * and upserts, too Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Elegant Operators * * document keywords Thursday, February 4, 2010
    • for queries $ne $in $nin $mod $all $size $exists Thursday, February 4, 2010
    • for updates $inc $set $push $pushAll $pop $pull $pullAll Thursday, February 4, 2010
    • Aggregation * *and other cool features Thursday, February 4, 2010
    • group map-reduce Thursday, February 4, 2010
    • Data Modeling & Design Patterns Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Simulating a flexible schema Thursday, February 4, 2010
    • Simulating a flexible schema What’s the join like? Thursday, February 4, 2010
    • Simulating a flexible schema What’s the join like? Can we reason about it? Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • {:sku => ‘637636’, :name => ‘Linen tailored pant’, :about => [{:title => ‘fabric & care’, :content => [‘Dry clean’, ‘Imported’]}, {:title => ‘overview’, :content => [‘Tailored fit’, ‘Yarn dyed’]} ] }* * Simplified, but not far-fetched. Thursday, February 4, 2010
    • One to y Many Many Many Man any Many Many Many any Many Many Many M Many Many Many Many Thursday, February 4, 2010
    • comments has_many votes comments comments votes comment_id user_id Thursday, February 4, 2010
    • document comments Thursday, February 4, 2010
    • post has_many comments post comments post_id user_id tree attrs Thursday, February 4, 2010
    • 1. embedded document {:title => ‘a life unexamined’, :comments => [ {:author => ‘socrates’, :text => ‘is not worthwhile’}, {:author => ‘epicurus’, :text => ‘leads to bliss’} ] } Thursday, February 4, 2010
    • 2. embedded & nested {:comments => [ {:author => ‘socrates’, :text => ‘is not worthwhile’, :comments => [ {:author => ‘epicurus’, :text => ‘leads to bliss’}]}, ] } Thursday, February 4, 2010
    • 3. normalized [{:author => ‘socrates’, :text => ‘is not worthwhile’, :post_id => ‘4c4fa6d000002’}, {:author => ‘epicurus’, :text => ‘leads to bliss’, :post_id => ‘4c4fa6d000002’} ] Thursday, February 4, 2010
    • Embed relationships tightly-bound concepts tradeoffs Break out first-class docs independent concepts Thursday, February 4, 2010
    • any Many Many Many any Many Many Many M Many Many Many Many to y Many Many Many Man any Many Many Many ny Many Many Many M Many Many Many Many Thursday, February 4, 2010
    • products & categories products join product_id category_id categories Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Performance, Scalability, & A Few Internals Thursday, February 4, 2010
    • master-slave replication failover, read-scaling mongod (m) mongod (s) mongod (s) mongod (s) Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • client Thursday, February 4, 2010
    • mongos client Thursday, February 4, 2010
    • Shards m m m m m m m m m mongos client Thursday, February 4, 2010
    • Shards m m m Config m m m m m m Servers mongod mongod mongod mongos client Thursday, February 4, 2010
    • Shards m m m ... Config m m m m m m Servers mongod mongod mongod mongos ... mongos client Thursday, February 4, 2010
    • Use Cases & Production Deployments Thursday, February 4, 2010
    • sourceforge.net Thursday, February 4, 2010
    • businesinsider.com Thursday, February 4, 2010
    • github.com Thursday, February 4, 2010
    • harmonyapp.com Thursday, February 4, 2010
    • Exercises & What’s Not Water Thursday, February 4, 2010
    • Capped Collections GridFS Thursday, February 4, 2010
    • Capped Collections GridFS MongoMapper Mongoid Mongodoc Thursday, February 4, 2010
    • Capped Collections GridFS MongoMapper Mongoid Mongodoc Pre-compiled binaries Thorough documentation Multi-language support Thursday, February 4, 2010
    • Quiz time: Which is these is water? Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • {:sku => ‘637636’, :name => ‘Linen tailored pant’, :about => [{:title => ‘fabric & care’, :content => [‘Dry clean’, ‘Imported’]}, {:title => ‘overview’, :content => [‘Tailored fit’, ‘Yarn dyed’]} ] }* Thursday, February 4, 2010
    • rake db:migrate Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • Thursday, February 4, 2010
    • credits http://www.flickr.com/photos/noodlesgirly/70340880 http://www.flickr.com/photos/shindotv/3835365163/ http://www.squareamerica.com/ib.htm Thursday, February 4, 2010
    • google groups: mongodb-user freenode: #mongodb docs & download: mongodb.org twitter.com/hwaet kyle@10gen.com inspired by slideshare.net/timanglade/tin Thursday, February 4, 2010