2011 08-16 MongoNYC
Upcoming SlideShare
Loading in...5
×
 

2011 08-16 MongoNYC

on

  • 1,966 views

 

Statistics

Views

Total Views
1,966
Views on SlideShare
1,774
Embed Views
192

Actions

Likes
1
Downloads
13
Comments
0

7 Embeds 192

http://www.10gen.com 161
http://lanyrd.com 18
http://www.mongodb.com 8
http://drupal1.10gen.cc 2
http://twitter.com 1
http://trunk.ly 1
https://www.mongodb.com 1
More...

Accessibility

Categories

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

2011 08-16 MongoNYC 2011 08-16 MongoNYC Presentation Transcript

  • Happiness isMongoDB
    Tuesday, august16th, 2011
    Daniel Doubrovkine (dB.) | @dblockdotorg | http://art.sy
  • Art Genome Project
    Kasimir Malevich – “Self Portrait” - vs. - William Beckman – “Self Portrait”
  • Nearest Neighbor Search in High-Dimensional Space
    Euclidean Distance
    artworks.each { |a2|
    d = euclidean(a1, a2)
    }.sort by |d|
    𝑑=(100−40)2+(0−100)2+…+(0−60)2
     
  • MySQL Prototype: Schema
  • MySQL Prototype: Schema
    • Need a sorted vector of values, including zeroes: [ 100, 0, 20, … 60 ] on boot
    Annoying …
    10K artworks: 5 minutes to startup
    … accomplishes nothing.
  • MongoDB
    Genome.genes – it’s a hash!
    { “Career Stage” => 100, …, “Conceptual” => 20 }
    Genome, Embedded in Artwork
    Locality Sensitive Hashing
  • Choosing MongoDB
    Got (too) many years of experience with *SQL / DW
    @harryh uses it @ 4sq
    @eliothorowitzlooks pretty smart
    db.startups.find({ location : { $near : GA }, category : ‘nosql database vendor' } ).first = 10gen
    install … ? … profit
    available on Heroku from MongoHQ
    much better for continuous deployment
  • Tidbits
    MongoDB retrieval by ID is as fast, if not faster, than Ruby Hash
    Using Rails + Rake and Mongo is safer than mongo shell db.collection.update({x: y})
    Shared Hosting is not Rubber, You Can’t Stretch It
    Map/reduce for live queries really doesn’t work, no reallymongoid_fulltext
    Read-secondary + Map/Reduce can be fun read_secondary: <%= $rails_rake_task.nil? or !$rails_rake_task %>
    Collection names are limited in length if you use mongodumphttps://jira.mongodb.org/browse/SERVER-2973
    copyDatabase requires administrative privilegeshttps://jira.mongodb.org/browse/SERVER-2846
    Mongo cursors aren’t snapshotted by defaultProcessing 5183 of 4012 …http://www.mongodb.org/display/DOCS/How+to+do+Snapshotted+Queries+in+the+Mongo+Database
    Mongo Interest is growing, RoR + MongoId = GTDhttp://code.dblock.org/ror-win-getting-things-done-with-mongodb-mongoid
  • Dev/Staging/Production
    MongoHQ Extensions via Heroku
    Production Directly w/MongoHQ
    A Few Hundred Bucks / mo.
    Mongo 1.8.1 w/ replica sets, 2 DBs and 1 arbiter
    Different Availability Zones
    Dedicated RAM, separate EBS, shared CPU
    Early Issues, Now Very Stable
    Jason McCay + other folks @ MongoHQ= Awesome
    Mongoid2.0.2
    mongoid_slug
    mongoid_fulltext
    mongoid_history
    delayed_job_mongoid
  • We *heart* MongoDB
    name: Daniel Doubrovkine(aka. dB.)
    company: http://art.sy
    ^work here twitter:@dblockdotorg
    blog: http://code.dblock.org ^link to slides here
    email: dblock@dblock.org