Mongodb on Ruby And Rails (froscon 2010)
-
Upload
janmindmatters -
Category
Technology
-
view
2.897 -
download
0
description
Transcript of Mongodb on Ruby And Rails (froscon 2010)
![Page 1: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/1.jpg)
on rails
froscon 2010, st. augustin.
jan krutisch <[email protected]>http://jan.krutisch.de/
Sonntag, 22. August 2010
![Page 2: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/2.jpg)
mongodb wtf? lol!?
Sonntag, 22. August 2010
![Page 3: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/3.jpg)
document database
Sonntag, 22. August 2010
![Page 4: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/4.jpg)
document database
NoSQLincluded!
Sonntag, 22. August 2010
![Page 5: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/5.jpg)
10gen
Sonntag, 22. August 2010
![Page 6: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/6.jpg)
open source
http://github.com/mongodb/mongo
Sonntag, 22. August 2010
![Page 7: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/7.jpg)
id title descr pos_lat pos_lng
Sonntag, 22. August 2010
![Page 8: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/8.jpg)
no fixed schemano migrations
Sonntag, 22. August 2010
![Page 9: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/9.jpg)
rich data structure
Sonntag, 22. August 2010
![Page 10: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/10.jpg)
{ "_id" : ObjectId("4c00245062610475a005afcd"), "address" : "Bernstorffstr. 174\n22767 Hamburg\nDE", "description" : null, "position" : { "lat" : 53.5600912, "lng" : 9.9596977 }, "tags" : [ "hausarzt", "naturheilverfahren", "akupunktur", "allgemeinmedizin" ], "title" : "Dr. med. Lilo Eisenbarth", "loxicon_id" : 808261 }
Sonntag, 22. August 2010
![Page 11: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/11.jpg)
Sonntag, 22. August 2010
![Page 12: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/12.jpg)
✗Sonntag, 22. August 2010
![Page 13: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/13.jpg)
Sonntag, 22. August 2010
![Page 14: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/14.jpg)
BSON
Sonntag, 22. August 2010
![Page 15: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/15.jpg)
BInary Serialized jsON
http://bsonspec.org/Sonntag, 22. August 2010
![Page 16: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/16.jpg)
Lightweight
Sonntag, 22. August 2010
![Page 17: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/17.jpg)
Traversable
Sonntag, 22. August 2010
![Page 18: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/18.jpg)
Efficient
Sonntag, 22. August 2010
![Page 19: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/19.jpg)
Wire
Sonntag, 22. August 2010
![Page 20: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/20.jpg)
Storage
Sonntag, 22. August 2010
![Page 21: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/21.jpg)
rich queries
Sonntag, 22. August 2010
![Page 22: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/22.jpg)
conceptually close to SQL
Sonntag, 22. August 2010
![Page 23: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/23.jpg)
easy to grasp
Sonntag, 22. August 2010
![Page 24: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/24.jpg)
flexible
Sonntag, 22. August 2010
![Page 25: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/25.jpg)
language integration
Sonntag, 22. August 2010
![Page 26: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/26.jpg)
on top: map/reduce
Sonntag, 22. August 2010
![Page 27: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/27.jpg)
Scaling
Sonntag, 22. August 2010
![Page 28: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/28.jpg)
Master/Slave replication
Sonntag, 22. August 2010
![Page 29: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/29.jpg)
Replica Sets (1.6)
Sonntag, 22. August 2010
![Page 30: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/30.jpg)
Primary
Member Member
Sonntag, 22. August 2010
![Page 31: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/31.jpg)
Prim
ary
Member Primary
Sonntag, 22. August 2010
![Page 32: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/32.jpg)
Member
Member Primary
Sonntag, 22. August 2010
![Page 33: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/33.jpg)
Autosharding (1.6)
Sonntag, 22. August 2010
![Page 34: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/34.jpg)
Sonntag, 22. August 2010
![Page 35: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/35.jpg)
Durability
Sonntag, 22. August 2010
![Page 36: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/36.jpg)
No single server durability!
Sonntag, 22. August 2010
![Page 37: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/37.jpg)
fsyncs every 60s(configurable)
Sonntag, 22. August 2010
![Page 38: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/38.jpg)
Use Replication!
Sonntag, 22. August 2010
![Page 39: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/39.jpg)
Use write propagation locking
Sonntag, 22. August 2010
![Page 40: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/40.jpg)
Single Server Durability planned for 1.8
Sonntag, 22. August 2010
![Page 41: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/41.jpg)
mongo console
Sonntag, 22. August 2010
![Page 42: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/42.jpg)
$ mongo
Sonntag, 22. August 2010
![Page 43: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/43.jpg)
> use testswitched to db test
db.quotes.save({ text: "You can observe a lot just by watching.", from: "Yogi Berra", created_at: new Date() });
db.quotes.save({ text: "Silence is one of the hardest arguments to refute.", from: "Josh Billings", created_at: new Date() });
Sonntag, 22. August 2010
![Page 44: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/44.jpg)
Indexing
Sonntag, 22. August 2010
![Page 45: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/45.jpg)
Same concept as with SQL databases
Sonntag, 22. August 2010
![Page 46: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/46.jpg)
You want them
Sonntag, 22. August 2010
![Page 47: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/47.jpg)
Same concept as with SQL databases
Sonntag, 22. August 2010
![Page 48: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/48.jpg)
Sort order
Sonntag, 22. August 2010
![Page 49: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/49.jpg)
Unique
Sonntag, 22. August 2010
![Page 50: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/50.jpg)
Compound
Sonntag, 22. August 2010
![Page 51: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/51.jpg)
Geospatial
Sonntag, 22. August 2010
![Page 52: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/52.jpg)
map/reduce
Sonntag, 22. August 2010
![Page 53: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/53.jpg)
we can haz it, too
Sonntag, 22. August 2010
![Page 54: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/54.jpg)
function() { this.tags.forEach(function(z) { emit(z, {count: 1}); }); }
function(key, values) { var total = 0; values.forEach(function(v) { total += v }); return {count: total} }
Sonntag, 22. August 2010
![Page 55: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/55.jpg)
(it‘s not fast...)
Sonntag, 22. August 2010
![Page 56: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/56.jpg)
security
Sonntag, 22. August 2010
![Page 57: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/57.jpg)
simple user/password auth
Sonntag, 22. August 2010
![Page 58: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/58.jpg)
per database
Sonntag, 22. August 2010
![Page 59: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/59.jpg)
read only is possible
Sonntag, 22. August 2010
![Page 60: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/60.jpg)
one more thing
Sonntag, 22. August 2010
![Page 61: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/61.jpg)
GridFS
Sonntag, 22. August 2010
![Page 62: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/62.jpg)
Binary fields in BSON < 4MB
Sonntag, 22. August 2010
![Page 63: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/63.jpg)
GridFS saves files in chunks
Sonntag, 22. August 2010
![Page 64: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/64.jpg)
I‘m in u‘r rubies,querying teh MongoDB!
Sonntag, 22. August 2010
![Page 65: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/65.jpg)
core driver
Sonntag, 22. August 2010
![Page 66: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/66.jpg)
mongo / bson_ext
Sonntag, 22. August 2010
![Page 67: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/67.jpg)
ODMs / Libs
Sonntag, 22. August 2010
![Page 68: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/68.jpg)
mongo_mapper
Sonntag, 22. August 2010
![Page 69: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/69.jpg)
mongoid
Sonntag, 22. August 2010
![Page 70: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/70.jpg)
Find examples here:http://github.com/halfbyte/mongo_ruby_examples
Sonntag, 22. August 2010
![Page 71: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/71.jpg)
Basic driver usage
Sonntag, 22. August 2010
![Page 72: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/72.jpg)
init
Sonntag, 22. August 2010
![Page 73: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/73.jpg)
require 'mongo'
@connection = Mongo::Connection.new@db = @connection.db("test")
Sonntag, 22. August 2010
![Page 74: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/74.jpg)
insert/upsert
Sonntag, 22. August 2010
![Page 75: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/75.jpg)
doc = { :text => "You can observe a lot just by watching.", :from => "Yogi Berra", :created_at => Time.now}@db['quotes'].insert(doc)
Sonntag, 22. August 2010
![Page 76: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/76.jpg)
doc = @db['quotes'].find_one(id)
doc[:from] = "Yogi Berra, famous baseball player"
@db['quotes'].save(doc)
Sonntag, 22. August 2010
![Page 77: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/77.jpg)
atomic updates
Sonntag, 22. August 2010
![Page 78: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/78.jpg)
@db['quotes'].update( {"from" => "Yogi Berra"}, {"$inc" => {"reads" => 1 } })
Sonntag, 22. August 2010
![Page 79: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/79.jpg)
@db['quotes'].update( {"from" => "Yogi Berra"}, {"$inc" => {"reads" => 1 } })
Sonntag, 22. August 2010
![Page 80: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/80.jpg)
$inc$set$unset$push$pushAll
$addToSet$pop$pull$pullAll$
Sonntag, 22. August 2010
![Page 81: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/81.jpg)
getting a whole collection
Sonntag, 22. August 2010
![Page 82: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/82.jpg)
@db['quotes'].find.each do |row| puts row.inspectend
Sonntag, 22. August 2010
![Page 83: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/83.jpg)
exact query
Sonntag, 22. August 2010
![Page 84: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/84.jpg)
@db['quotes'].find(:from => "Yogi Berra")
Sonntag, 22. August 2010
![Page 85: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/85.jpg)
more queries
Sonntag, 22. August 2010
![Page 86: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/86.jpg)
100.times do |i| db['numbers'].insert({"i" => i})end
Sonntag, 22. August 2010
![Page 87: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/87.jpg)
db['numbers'].find("i" => {"$lt" => 2})
Sonntag, 22. August 2010
![Page 88: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/88.jpg)
$lt <$gt >$lte <=$gte >=$ne !=
Sonntag, 22. August 2010
![Page 89: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/89.jpg)
@db['people'].find(:tags => {"$in" => ['cool']})
Sonntag, 22. August 2010
![Page 90: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/90.jpg)
obj = { "_id"=>BSON::ObjectID('4c706af16261040680000369'), "name"=>"Vernon Kreiger", "address"=>{ "street"=>"536 Haleigh Locks", "city"=>"Port Kiannahaven", "zip"=>"80730-0214", "country"=>"Fakistan" }, "tags"=>["cool", "weird"]}
Sonntag, 22. August 2010
![Page 91: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/91.jpg)
obj = { "_id"=>BSON::ObjectID('4c706af16261040680000369'), "name"=>"Vernon Kreiger", "address"=>{ "street"=>"536 Haleigh Locks", "city"=>"Port Kiannahaven", "zip"=>"80730-0214", "country"=>"Fakistan" }, "tags"=>["cool", "weird"]}
Sonntag, 22. August 2010
![Page 92: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/92.jpg)
$in IN (2,3,4)$nin NOT IN$all [2,3] ~ [1,2,3]
Sonntag, 22. August 2010
![Page 93: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/93.jpg)
$mod yah, RLY$size okay$exists NOT NULL$type huh?
Sonntag, 22. August 2010
![Page 94: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/94.jpg)
@db['people'].find("address.city" => /haven/)
Sonntag, 22. August 2010
![Page 95: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/95.jpg)
@db['people'].find("address.city" => /haven/)
Sonntag, 22. August 2010
![Page 96: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/96.jpg)
Sorting
Sonntag, 22. August 2010
![Page 97: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/97.jpg)
@db['people'].find().sort("address.street")
Sonntag, 22. August 2010
![Page 98: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/98.jpg)
@db['people'].find().sort("address.street")
Sonntag, 22. August 2010
![Page 99: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/99.jpg)
Pagination
Sonntag, 22. August 2010
![Page 100: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/100.jpg)
@db['numbers'].find.sort("i").limit(10)
Sonntag, 22. August 2010
![Page 101: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/101.jpg)
@db['numbers'].find.sort("i").limit(10).skip(50)
Sonntag, 22. August 2010
![Page 102: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/102.jpg)
Counting
Sonntag, 22. August 2010
![Page 103: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/103.jpg)
@db['numbers'].find.count
Sonntag, 22. August 2010
![Page 104: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/104.jpg)
Distinct
Sonntag, 22. August 2010
![Page 105: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/105.jpg)
@db['people'].distinct('tags').inspect
Sonntag, 22. August 2010
![Page 106: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/106.jpg)
Group
Sonntag, 22. August 2010
![Page 107: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/107.jpg)
Poor mans map/reduce
Sonntag, 22. August 2010
![Page 108: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/108.jpg)
Map / Reduce
Sonntag, 22. August 2010
![Page 109: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/109.jpg)
map = <<-END function() { this.tags.forEach(function(z) { emit(z, {count: 1}); }); }ENDreduce = <<-END function(key, values) { var total = 0; values.forEach(function(v) { total += v.count }); return {count: total} }END
collection = @db['people'].map_reduce( map, reduce)
Sonntag, 22. August 2010
![Page 110: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/110.jpg)
Indexes
Sonntag, 22. August 2010
![Page 111: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/111.jpg)
db['people'].create_index("tags")
db['people'].drop_index("tags_1")
db['people'].index_information
Sonntag, 22. August 2010
![Page 112: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/112.jpg)
GridFS usage
Sonntag, 22. August 2010
![Page 113: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/113.jpg)
grid = Mongo::Grid.new(@db)
id = grid.put("You can put Strings in here", :filename => 'test.txt')
file = grid.get(id)
file.filenamefile.read
grid.delete(id)
grid.put( File.open("/Users/jankrutisch/Dropbox/Photos/IMGP8989.jpg"))
Sonntag, 22. August 2010
![Page 114: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/114.jpg)
fs = Mongo::GridFileSystem.new(db)
fs.open("test.txt", "w") do |f| f.write "You can put stuff in here"end
fs.open("test.txt", "r") do |f| puts f.readend
fs.delete("test.txt")
Sonntag, 22. August 2010
![Page 115: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/115.jpg)
Capped collections
Sonntag, 22. August 2010
![Page 116: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/116.jpg)
@db.create_collection('capped_numbers', :capped => true, :max => 50)
@db.create_collection('capped_numbers', :capped => true, :size => 1024 * 64)
Sonntag, 22. August 2010
![Page 117: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/117.jpg)
ODMs
Sonntag, 22. August 2010
![Page 118: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/118.jpg)
mongo_mapper
Sonntag, 22. August 2010
![Page 119: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/119.jpg)
John Nunemaker@jnunemaker
Sonntag, 22. August 2010
![Page 120: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/120.jpg)
is in production
Sonntag, 22. August 2010
![Page 121: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/121.jpg)
documentation?
Sonntag, 22. August 2010
![Page 122: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/122.jpg)
Sonntag, 22. August 2010
![Page 123: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/123.jpg)
how to
Sonntag, 22. August 2010
![Page 124: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/124.jpg)
rails initializer
Sonntag, 22. August 2010
![Page 125: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/125.jpg)
# config/initializers/mongo_mapper.rbFile.open(File.join(Rails.root, 'config/mongodb.yml'), 'r') do |f| @settings = YAML.load(f)[Rails.env]end
MongoMapper.connection = Mongo::Connection.from_uri(@settings["connection"]) if @settings["connection"]
MongoMapper.database = @settings["database"]
Sonntag, 22. August 2010
![Page 126: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/126.jpg)
a simple example
Sonntag, 22. August 2010
![Page 127: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/127.jpg)
MongoMapper.connection = @connectionMongoMapper.database = "test"
class Quote include MongoMapper::Document key :from key :text key :views, Integer timestamps!end
Sonntag, 22. August 2010
![Page 128: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/128.jpg)
finders
Sonntag, 22. August 2010
![Page 129: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/129.jpg)
Quote.where(:from => 'Yogi Berra').all
Quote.where(:from => 'Yogi Berra').limit(5).sort(:from.desc).all
Sonntag, 22. August 2010
![Page 130: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/130.jpg)
embedded docs
Sonntag, 22. August 2010
![Page 131: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/131.jpg)
class Person include MongoMapper::Document key :name one :address key :tags, Arrayend
class Address include MongoMapper::Document key :street key :city key :country key :zipend
Sonntag, 22. August 2010
![Page 132: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/132.jpg)
person = Person.firstaddress = Person.first.address
Sonntag, 22. August 2010
![Page 133: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/133.jpg)
scopes
Sonntag, 22. August 2010
![Page 134: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/134.jpg)
class Person scope :tagged, lambda { |tag| where(:tags.in => [tag]) }end
puts Person.tagged('cool').first.inspect
Sonntag, 22. August 2010
![Page 135: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/135.jpg)
new website coming soon
Sonntag, 22. August 2010
![Page 136: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/136.jpg)
mongoid
Sonntag, 22. August 2010
![Page 137: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/137.jpg)
Durran Jordan(of Hashrocket)
Sonntag, 22. August 2010
![Page 138: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/138.jpg)
Two major versions
Sonntag, 22. August 2010
![Page 139: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/139.jpg)
1.x (1.9.x) targeting Rails 2.3.x
Sonntag, 22. August 2010
![Page 140: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/140.jpg)
2.x (2.0beta) targeting Rails 3.0
Sonntag, 22. August 2010
![Page 141: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/141.jpg)
Good documentation
Sonntag, 22. August 2010
![Page 142: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/142.jpg)
Sonntag, 22. August 2010
![Page 143: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/143.jpg)
rails initializer
Sonntag, 22. August 2010
![Page 144: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/144.jpg)
File.open(File.join(RAILS_ROOT, 'config/mongodb.yml'), 'r') do |f| @settings = YAML.load(f)[RAILS_ENV]end
Mongoid::Config.instance.from_hash(@settings)
Sonntag, 22. August 2010
![Page 145: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/145.jpg)
a simple example
Sonntag, 22. August 2010
![Page 146: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/146.jpg)
class Quote include Mongoid::Document include Mongoid::Timestamps field :from field :text field :views, :type => Integerend
Sonntag, 22. August 2010
![Page 147: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/147.jpg)
finders
Sonntag, 22. August 2010
![Page 148: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/148.jpg)
Quote.where(:from => 'Yogi Berra').all
Quote.where(:from => 'Yogi Berra').limit(5).order_by(:from.desc).all
Sonntag, 22. August 2010
![Page 149: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/149.jpg)
embedded docs
Sonntag, 22. August 2010
![Page 150: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/150.jpg)
class Person include Mongoid::Document field :name embeds_one :address field :tags, :type => Arrayend
class Address include Mongoid::Document field :street field :city field :country field :zipend
Sonntag, 22. August 2010
![Page 151: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/151.jpg)
person = Person.firstaddress = Person.first.address
Sonntag, 22. August 2010
![Page 152: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/152.jpg)
scopes
Sonntag, 22. August 2010
![Page 153: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/153.jpg)
class Person scope :tagged, lambda { |tag| where(:tags.in => [tag]) }end
puts Person.tagged('cool').first.inspect
Sonntag, 22. August 2010
![Page 154: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/154.jpg)
More features
Sonntag, 22. August 2010
![Page 155: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/155.jpg)
atomic updates
Sonntag, 22. August 2010
![Page 156: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/156.jpg)
mongoid tries to be clever
Sonntag, 22. August 2010
![Page 157: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/157.jpg)
(using the „dirty“ flags)
Sonntag, 22. August 2010
![Page 158: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/158.jpg)
(it‘s probably better to bypass the ODM sometimes)
Sonntag, 22. August 2010
![Page 159: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/159.jpg)
GridFS
Sonntag, 22. August 2010
![Page 160: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/160.jpg)
external libraries for both
Sonntag, 22. August 2010
![Page 161: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/161.jpg)
mongo_mapper > grip
Sonntag, 22. August 2010
![Page 162: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/162.jpg)
mongoid > mongoid_grid
Sonntag, 22. August 2010
![Page 163: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/163.jpg)
Other noteworthy libraries
Sonntag, 22. August 2010
![Page 164: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/164.jpg)
Candy
Sonntag, 22. August 2010
![Page 165: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/165.jpg)
Candy
Sonntag, 22. August 2010
![Page 166: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/166.jpg)
mongodoc
http://github.com/leshill/mongodoc
Sonntag, 22. August 2010
![Page 167: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/167.jpg)
mongo-record
http://github.com/mongodb/mongo-record
Sonntag, 22. August 2010
![Page 168: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/168.jpg)
mongomodel
http://github.com/spohlenz/mongomodel
Sonntag, 22. August 2010
![Page 169: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/169.jpg)
mongo_queue
http://github.com/Skiz/mongo_queue
Sonntag, 22. August 2010
![Page 170: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/170.jpg)
resque-mongo
http://github.com/ctrochalakis/resque-mongo
Sonntag, 22. August 2010
![Page 171: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/171.jpg)
my account
Sonntag, 22. August 2010
![Page 172: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/172.jpg)
Installation was easy
Sonntag, 22. August 2010
![Page 173: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/173.jpg)
(when on right platform)
Sonntag, 22. August 2010
![Page 174: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/174.jpg)
setting up replication
Sonntag, 22. August 2010
![Page 175: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/175.jpg)
$ mongod --masterormaster = true # mongodb.conf
$ mongod --slave --source slaveserver.example.com
slave = truesource = slaveserver.example.com
Sonntag, 22. August 2010
![Page 176: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/176.jpg)
(see example on github)
Sonntag, 22. August 2010
![Page 177: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/177.jpg)
OpLog size!
Sonntag, 22. August 2010
![Page 178: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/178.jpg)
„security“
Sonntag, 22. August 2010
![Page 179: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/179.jpg)
memory usage?
Sonntag, 22. August 2010
![Page 180: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/180.jpg)
limits?
Sonntag, 22. August 2010
![Page 181: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/181.jpg)
stability?
Sonntag, 22. August 2010
![Page 182: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/182.jpg)
I ♥
Sonntag, 22. August 2010
![Page 183: Mongodb on Ruby And Rails (froscon 2010)](https://reader034.fdocuments.us/reader034/viewer/2022042607/554fd97ab4c90516478b4afc/html5/thumbnails/183.jpg)
thanks for listening.
‣ [email protected]‣ http://jan.krutisch.de/‣ http://github.com/halfbyte/‣ http://twitter.com/halfbyte‣ http://www.mindmatters.de/
‣ http://www.mongodb.org/‣ http://www.mongoid.org/‣ http://github.com/jnunemaker/mongo_mapper‣ http://github.com/halfbyte/mongo_ruby_examples
Sonntag, 22. August 2010