Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Seedhack 2011 - Introducing MongoDB
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Russell Smith
April 20, 2012
Technology
140
1
Share
Seedhack 2011 - Introducing MongoDB
Russell Smith
April 20, 2012
More Decks by Russell Smith
See All by Russell Smith
Ops Skills and Tools for Beginners [MongoDB World 2014]
ukd1
0
130
3 Infrastructure + workflow lessons from an early stage startup
ukd1
0
130
Bitcoin Ops & Security Primer
ukd1
1
180
Gearman & Kohana
ukd1
2
990
Geo & capped collections with MongoDB
ukd1
1
160
Cassandra London UG July 2011 - Riak vs Cassandra
ukd1
1
320
MongoDB - Map Reduce
ukd1
2
250
MongoDB London UG, April 2011 - MongoDB Introduction
ukd1
1
120
MongoDB London 2011 - MongoDB Command Line Tools
ukd1
1
210
Other Decks in Technology
See All in Technology
「決め方」の渡し方 / How to hand over the "decision-making process"
pauli
2
130
QA組織のAI戦略とAIテスト設計システムAITASの実践
sansantech
PRO
1
320
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
5
1.3k
40代からのアウトプット ― 経験は価値ある学びに変わる / 20260404 Naoki Takahashi
shift_evolve
PRO
5
770
契約書からの情報抽出を行うLLMのスループットを、バッチ処理を用いて最大40%改善した話
sansantech
PRO
3
350
自分をひらくと次のチャレンジの敷居が下がる
sudoakiy
5
1.7k
Physical AI on AWS リファレンスアーキテクチャ / Physical AI on AWS Reference Architecture
aws_shota
1
320
Move Fast and Break Things: 10 in 20
ramimac
0
120
Embeddings : Symfony AI en pratique
lyrixx
0
450
「活動」は激変する。「ベース」は変わらない ~ 4つの軸で捉える_AI時代ソフトウェア開発マネジメント
sentokun
0
140
JSTQB Expert Levelシラバス「テストマネジメント」日本語版のご紹介
ymty
0
120
Network Firewall Proxyで 自前プロキシを消し去ることができるのか
gusandayo
0
170
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
Building AI with AI
inesmontani
PRO
1
850
Optimising Largest Contentful Paint
csswizardry
37
3.6k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
92
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
140
Side Projects
sachag
455
43k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
660
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
53k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.5k
Transcript
An introduction to MongoDB Russell Smith Friday, 20 April 12
/usr/bin/whoami • Russell Smith • Consultant for UKD1 Limited, •
External consultant for 10gen • Help with code, architecture, infrastructure, devops, sysops, capacity planning, etc • <3 MongoDB, MySQL, Redis, Gearman, Neo4j, Kohana, Riak, PHP, Debian, AWS, etc Friday, 20 April 12
What is MongoDB • A scalable, high-performance, open source, document-oriented
database. • Stores JSON like documents • Commercially backed by 10gen Friday, 20 April 12
Why choose it? • Schema-less • Simple • Reliable •
Scalable • Drivers Friday, 20 April 12
Who uses it? • Foursquare • Disney • Craigslist •
MTV Networks • O2 • Telefonica Friday, 20 April 12
Basics • insert • find • update • remove •
ensureIndex Friday, 20 April 12
Insert • db.test.insert({hello: ‘world’}); Friday, 20 April 12
Find • db.test.find() • Equivalent of SELECT * FROM test;
> db.test.insert({hello: ‘world’}); > db.test.find(); { "_id" : ObjectId("4e7c9f464bdd7534bc498ff7"), "hello" : "world" } Friday, 20 April 12
Updating • db.test.update(<condition>, <operation>) > db.test.find(); { "_id" : ObjectId("4e7c9f464bdd7534bc498ff7"),
"hello" : "world" } > db.test.update({hello:‘world’}, {hello: ‘seedhack’}); > db.test.find(); { "_id" : ObjectId("4e7c9f464bdd7534bc498ff7"), "hello" : "seedhack" } Friday, 20 April 12
Removing • db.test.remove(<condition>) > db.test.find(); { "_id" : ObjectId("4e7c9f464bdd7534bc498ff7"), "hello"
: "seedhack" } > db.test.remove({hello: ‘seedhack’}); > db.test.count() 0 > Friday, 20 April 12
Indexes • It’s usually a good idea to index your
collections • How and which columns depends on what you are doing • explain > db.test.ensureIndex({hello:1}) Friday, 20 April 12
More advanced • sort, count, limit, special operators • Capped
collections • Geospatial indexing • MapReduce • Replica sets • Sharding Friday, 20 April 12
Getting started... • Download & install - http://www.mongodb.org/downloads • Online
shell - http://www.mongodb.org/ Friday, 20 April 12
Questions / Further • Come and ask me questions •
Updates can also push, set, increment, decrement, etc http://bit.ly/gEfKOr • Indexes can be across multiple keys, 2D (geo) and ASC / DESC http://bit.ly/hpK68Q • SQL -> Mongo chart http://bit.ly/ig1Yfj Friday, 20 April 12