Bringing MongoDB into your organization
-
Upload
ryan-angilly -
Category
Technology
-
view
1.594 -
download
0
description
Transcript of Bringing MongoDB into your organization
![Page 1: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/1.jpg)
Introducing MongoDB into your
organization
From Punchbowl.com to YOURyan Angilly
@angilly
Tuesday, September 21, 2010
![Page 2: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/2.jpg)
• “Bringing MongoDB into your organization” ?
• MongoDB
• What?
• Why?
• Get your feet wet
• Dive in
Tuesday, September 21, 2010
![Page 3: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/3.jpg)
Punchbowl.com
Tuesday, September 21, 2010
![Page 4: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/4.jpg)
• Online invitation & party planning
Punchbowl.com
Tuesday, September 21, 2010
![Page 5: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/5.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
Punchbowl.com
Tuesday, September 21, 2010
![Page 6: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/6.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
• More tools for planning your party, not just the online invites
Punchbowl.com
Tuesday, September 21, 2010
![Page 7: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/7.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
• More tools for planning your party, not just the online invites
• Been around since 2007
Punchbowl.com
Tuesday, September 21, 2010
![Page 8: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/8.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
• More tools for planning your party, not just the online invites
• Been around since 2007
• Raised $2.5M+ -- Angels, Intel Capital, Contour Ventures
Punchbowl.com
Tuesday, September 21, 2010
![Page 9: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/9.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
• More tools for planning your party, not just the online invites
• Been around since 2007
• Raised $2.5M+ -- Angels, Intel Capital, Contour Ventures
• Deals w/ Oriental Trading, others....
Punchbowl.com
Tuesday, September 21, 2010
![Page 10: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/10.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
• More tools for planning your party, not just the online invites
• Been around since 2007
• Raised $2.5M+ -- Angels, Intel Capital, Contour Ventures
• Deals w/ Oriental Trading, others....
• Just rebranded from MyPunchbowl.com
Punchbowl.com
Tuesday, September 21, 2010
![Page 11: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/11.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
• More tools for planning your party, not just the online invites
• Been around since 2007
• Raised $2.5M+ -- Angels, Intel Capital, Contour Ventures
• Deals w/ Oriental Trading, others....
• Just rebranded from MyPunchbowl.com
• Just announced 1M users
Punchbowl.com
Tuesday, September 21, 2010
![Page 12: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/12.jpg)
• Online invitation & party planning
• Think e-Vite, but better everywhere
• More tools for planning your party, not just the online invites
• Been around since 2007
• Raised $2.5M+ -- Angels, Intel Capital, Contour Ventures
• Deals w/ Oriental Trading, others....
• Just rebranded from MyPunchbowl.com
• Just announced 1M users
• Recently previewed Digital Invitation Studio, the 3rd generation of our invite design software
Punchbowl.com
Tuesday, September 21, 2010
![Page 13: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/13.jpg)
You.
Tuesday, September 21, 2010
![Page 14: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/14.jpg)
You.
• Who here has used MongoDB?
Tuesday, September 21, 2010
![Page 15: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/15.jpg)
You.
• Who here has used MongoDB?
• Why are you here?
Tuesday, September 21, 2010
![Page 16: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/16.jpg)
A database
What is MongoDB?
Tuesday, September 21, 2010
![Page 17: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/17.jpg)
Schema-less
What is MongoDB?
Tuesday, September 21, 2010
![Page 18: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/18.jpg)
• Document based{ name: 'Ryan', email: '[email protected]', likes: ['mongodb', 'skiing', 'twitter', 'Boulder chicks'], dislikes: ['humidity', 'Sarah Palin', 'bigotry', 'The Yankees'], current_outfit: { pants: 'blue shorts', shirt: false, shoes: 'flip-flops', undies: 'wouldn\'t you like to know' }}
What is MongoDB?
Tuesday, September 21, 2010
![Page 19: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/19.jpg)
What is MongoDB?• NoSQL
Tuesday, September 21, 2010
![Page 20: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/20.jpg)
What is MongoDB?• NoSQL
SELECT * FROM `events` WHERE (`events`.`event_key` = ‘c76c876c675c8976cc`) AND (events.deleted_at IS NULL) LIMIT 1
SELECT `designs`.* FROM `designs` WHERE (`designs`.event_id = 206039) AND (designs.deleted_at IS NULL)
SELECT `design_assets`.* FROM `design_assets` WHERE (`design_assets`.`element_id` = 1096 and `design_assets`.`element_type` = 'Design') AND
( (`design_assets`.`type` = 'DesignImage' ))
SELECT * FROM `save_events` WHERE (`save_events`.event_id = 206039) AND (save_events.deleted_at IS NULL) LIMIT 1
SELECT * FROM `event_questions` WHERE (`event_questions`.event_id = 206039) LIMIT 1
SELECT * FROM `classifications` WHERE (`classifications`.`id` = 8) ORDER BY classifications.position ASC
SELECT * FROM `memberships` WHERE (`memberships`.user_id = 57) LIMIT 1
SELECT * FROM `papers` WHERE (`papers`.`id` = 28) AND ( (`papers`.`type` = 'DIYPaper' ) )
SELECT * FROM `design_assets` WHERE (`design_assets`.element_id = 28 AND `design_assets`.element_type = 'Paper')
SELECT * FROM `design_assets` WHERE (`design_assets`.`id` = 435) AND ( (`design_assets`.`type` = 'DesignPhoto' ) )
SELECT * FROM `ribbons` WHERE (`ribbons`.`id` = 4) AND ( (`ribbons`.`type` = 'DIYRibbon' ) )
SELECT * FROM `design_assets` WHERE (`design_assets`.element_id = 4 AND `design_assets`.element_type = 'Ribbon')
Tuesday, September 21, 2010
![Page 21: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/21.jpg)
What is MongoDB?• NoSQL
SELECT * FROM `events` WHERE (`events`.`event_key` = ‘c76c876c675c8976cc`) AND (events.deleted_at IS NULL) LIMIT 1
SELECT `designs`.* FROM `designs` WHERE (`designs`.event_id = 206039) AND (designs.deleted_at IS NULL)
SELECT `design_assets`.* FROM `design_assets` WHERE (`design_assets`.`element_id` = 1096 and `design_assets`.`element_type` = 'Design') AND
( (`design_assets`.`type` = 'DesignImage' ))
SELECT * FROM `save_events` WHERE (`save_events`.event_id = 206039) AND (save_events.deleted_at IS NULL) LIMIT 1
SELECT * FROM `event_questions` WHERE (`event_questions`.event_id = 206039) LIMIT 1
SELECT * FROM `classifications` WHERE (`classifications`.`id` = 8) ORDER BY classifications.position ASC
SELECT * FROM `memberships` WHERE (`memberships`.user_id = 57) LIMIT 1
SELECT * FROM `papers` WHERE (`papers`.`id` = 28) AND ( (`papers`.`type` = 'DIYPaper' ) )
SELECT * FROM `design_assets` WHERE (`design_assets`.element_id = 28 AND `design_assets`.element_type = 'Paper')
SELECT * FROM `design_assets` WHERE (`design_assets`.`id` = 435) AND ( (`design_assets`.`type` = 'DesignPhoto' ) )
SELECT * FROM `ribbons` WHERE (`ribbons`.`id` = 4) AND ( (`ribbons`.`type` = 'DIYRibbon' ) )
SELECT * FROM `design_assets` WHERE (`design_assets`.element_id = 4 AND `design_assets`.element_type = 'Ribbon')
vs.
db.events.findOne({event_key: ‘c76c876c675c8976cc’})
Tuesday, September 21, 2010
![Page 22: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/22.jpg)
What is MongoDB?
Tuesday, September 21, 2010
![Page 23: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/23.jpg)
What is MongoDB?
• Different (downsides)
Tuesday, September 21, 2010
![Page 24: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/24.jpg)
What is MongoDB?
• Different (downsides)
• Async writes
Tuesday, September 21, 2010
![Page 25: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/25.jpg)
What is MongoDB?
• Different (downsides)
• Async writes
• No transactions
Tuesday, September 21, 2010
![Page 26: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/26.jpg)
What is MongoDB?
• Different (downsides)
• Async writes
• No transactions
• Cannot get you dates
Tuesday, September 21, 2010
![Page 27: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/27.jpg)
Why use it?
• Simple query syntax
• Write hashes, not SQL.
Tuesday, September 21, 2010
![Page 28: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/28.jpg)
Why use it?
• Sharding
Tuesday, September 21, 2010
![Page 29: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/29.jpg)
Why use it?
• GridFS
Tuesday, September 21, 2010
![Page 30: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/30.jpg)
Get your feet wet.Tuesday, September 21, 2010
![Page 31: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/31.jpg)
Pick something low risk
• Logging
• Statistics
• Data mining
Tuesday, September 21, 2010
![Page 32: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/32.jpg)
Punchbowl Vendor Portal
Tuesday, September 21, 2010
![Page 33: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/33.jpg)
Punchbowl Vendor Portal
• http://www.punchbowl.com/vendors
• Track searches
• Track impressions
• Use data to entice vendors to purchase listings
Tuesday, September 21, 2010
![Page 34: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/34.jpg)
DiveIn.
Tuesday, September 21, 2010
![Page 35: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/35.jpg)
Go all out
• Don’t just use MongoDB “relationally”
• Embrace embedded documents
• Rethink your data schema
Tuesday, September 21, 2010
![Page 36: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/36.jpg)
Digital Invitation Studio
Tuesday, September 21, 2010
![Page 37: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/37.jpg)
Digital Invitation Studio
Design
Tuesday, September 21, 2010
![Page 38: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/38.jpg)
Digital Invitation Studio
Tags
Design
Tuesday, September 21, 2010
![Page 39: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/39.jpg)
Digital Invitation Studio
Tags
Photos Design
Tuesday, September 21, 2010
![Page 40: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/40.jpg)
Digital Invitation Studio
Tags
Photos
Envelope
Design
Tuesday, September 21, 2010
![Page 41: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/41.jpg)
Digital Invitation Studio
Tags
Photos
Envelope
Postage
Design
Tuesday, September 21, 2010
![Page 42: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/42.jpg)
Digital Invitation Studio
Tags
Photos
Envelope
Postage
Package
Design
Tuesday, September 21, 2010
![Page 43: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/43.jpg)
Digital Invitation Studio
Tags
Photos
Envelope
Postage
Package
Liner
Design
Tuesday, September 21, 2010
![Page 44: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/44.jpg)
Digital Invitation Studio
Tags
Photos
Envelope
Postage
Package
Liner
PaperDesign
Tuesday, September 21, 2010
![Page 45: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/45.jpg)
Digital Invitation Studio
Tags
Photos
Envelope
Postage
Package
Liner
Paper
Greeting
Design
Tuesday, September 21, 2010
![Page 46: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/46.jpg)
Design
Digital Invitation Studio
Tags
Photos
Envelope
Postage
Package
Liner
Paper
Greeting
Tuesday, September 21, 2010
![Page 47: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/47.jpg)
Digital Invitation Studio
Tuesday, September 21, 2010
![Page 48: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/48.jpg)
Digital Invitation Studio• Completely rethought how we create
designs
Tuesday, September 21, 2010
![Page 49: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/49.jpg)
Digital Invitation Studio• Completely rethought how we create
designs
• Brand new UI
Tuesday, September 21, 2010
![Page 50: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/50.jpg)
Digital Invitation Studio• Completely rethought how we create
designs
• Brand new UI
• Uses MongoDB for everything design-related
Tuesday, September 21, 2010
![Page 51: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/51.jpg)
Digital Invitation Studio• Completely rethought how we create
designs
• Brand new UI
• Uses MongoDB for everything design-related
• We didn’t touch our invite/event system, because we didn’t need to
Tuesday, September 21, 2010
![Page 52: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/52.jpg)
Digital Invitation Studio• Completely rethought how we create
designs
• Brand new UI
• Uses MongoDB for everything design-related
• We didn’t touch our invite/event system, because we didn’t need to
• http://www.punchbowl.com/digital-invitations
Tuesday, September 21, 2010
![Page 53: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/53.jpg)
Where’s my stuff?!
Tuesday, September 21, 2010
![Page 54: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/54.jpg)
Open Source is not scary.
Tuesday, September 21, 2010
![Page 55: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/55.jpg)
Open Source is not scary.
Libraries you are used to using may not be available.
Don’t be afraid.
Needed Paperclip
Didn’t have it
Created Roachclip
Tuesday, September 21, 2010
![Page 56: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/56.jpg)
Open Source is not scary.
Libraries you are used to using may not be available.
Don’t be afraid.
Needed Paperclip
Didn’t have it
Created Roachclip
Tuesday, September 21, 2010
![Page 57: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/57.jpg)
Open Source is not scary.
75 lines of code.
Libraries you are used to using may not be available.
Don’t be afraid.
Needed Paperclip
Didn’t have it
Created Roachclip
Tuesday, September 21, 2010
![Page 58: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/58.jpg)
Open Source is not scary.
75 lines of code.
104 lines of test
Libraries you are used to using may not be available.
Don’t be afraid.
Needed Paperclip
Didn’t have it
Created Roachclip
Tuesday, September 21, 2010
![Page 59: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/59.jpg)
Questions?
Tuesday, September 21, 2010
![Page 60: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/60.jpg)
Links
• www.punchbowl.com
• www.punchbowl.com/digital-invitations
• www.punchbowl.com/vendors
• www.mongodb.org
• @angilly
Tuesday, September 21, 2010
![Page 61: Bringing MongoDB into your organization](https://reader033.fdocuments.in/reader033/viewer/2022060107/554b737db4c905030a8b550d/html5/thumbnails/61.jpg)
Credits
• Images
• http://www.flickr.com/photos/felipeskroski/2566713455/sizes/l/in/photostream/
• http://www.flickr.com/photos/zesmerelda/3500706849/
• http://www.flickr.com/photos/galactic/2963937719/sizes/l/in/photostream/
• http://www.flickr.com/photos/oberazzi/318947873/sizes/l/in/photostream/
Tuesday, September 21, 2010