SlideShare a Scribd company logo
MongoDB and
DigitalOcean
Jay Gordon
Developer Advocate - NYC
@jaydestro
Jay Gordon
Developer Advocate - NYC
@jaydestro
{
"name" : "Jay Gordon",
"what" : Dev Advocate,
"former roles" : [
{ "title" : "SysAdmin",
"company": "BuzzFeed"
},
{ "title" : "Platform Engineer",
"company" : "DigitalOcean"
}
Area Man Talks About Software
Jay Gordon
Developer Advocate - NYC
@jaydestro
GET TO THE POINT.
Topics:
- Introducing MongoDB
- What’s under the hood?
- What makes up MongoDB?
- How can I configure MongoDB
with DO?
Jay Gordon
Developer Advocate - NYC
@jaydestro
GET TO THE POINT.
Not gonna:
- Use a silly analogy
about MongoDB and my
favorite sports
personality.
- Badmouth other DBs.
- Code live.
The Modern App
• High Concurrency
• High Throughput
• Low Latency
• Real-time analytics
• Cost Effective
• Zero downtime
Let’s Meet MongoDB
Let’s Meet MongoDB
Let’s Meet MongoDB
Drivers & Frameworks
Morphia
MEAN Stack
We’re Talking about Documents.
We’re Talking about Documents.
We’re Talking about Documents.
We’re Talking about Documents.
Your data is stored in JSON Style
game {
player_one: PlayerID,
player_two: PlayerID,
moves [ { token: <moveToken1>, ts: timestamp1 }, { token:
<moveToken2>, ts: timestamp2 ... ],
game_parameters: { param1 : v, param2 : v, ... },
start_time: ts,
end_time: ts,
state: <state>, // in_play, mate, resign, draw
winner: W || B || D
}
Documents are Rich Data Structures
{
first_name: ‘Paul’,
surname: ‘Miller’,
cell: 447557505611,
city: ‘London’,
location: [45.123,47.232],
Profession: [‘banking’, ‘finance’, ‘trader’],
cars: [
{ model: ‘Bentley’,
year: 1973,
value: 100000, … },
{ model: ‘Rolls Royce’,
year: 1965,
value: 330000, … }
]
}
Fields can contain an array
of sub-documents
Typed field values
Fields can contain arraysFields
Fields can be indexed and
queried at any level
ORM layer removed – Data is
already an object!
Documents are Flexible
{
sku: ‘PAINTZXC123’,
product_name: ‘Acme Paint’,
color: [‘Red’, ‘Green’],
size_oz: [8, 32],
finish: [‘satin’, ‘eggshell’]
}
{
sku: ‘TSHRTASD43546’,
product_name: ‘T-shirt’,
size: [‘S’, ‘M’, ‘L’, ‘XL’],
color: [‘Heather Gray’ … ],
material: ‘100% cotton’,
wash: ‘cold’,
dry: ‘tumble dry low’
}
{
sku: ‘CYCLBVCX6543’,
product_name: ‘Mountain Bike’,
brake_style: ‘mechanical disc’,
color: ‘grey’,
frame_material: ‘aluminum’,
no_speeds: 21,
package_height: ‘7.5x32.9x55’,
weight_lbs: 44.05,
suspension_type: ‘dual’,
wheel_size_in: 26
}
Documents in the same product catalog collection in MongoDB
BSON Storage
BSON Storage
Expressive Query Language
Rich Queries
Find Paul’s cars
Find everybody in London with a car between 1970 and 1980
Geospatial Find all of the car owners within 5km of Trafalgar Sq.
Text Search Find all the cars described as having leather seats
Aggregation Calculate the average value of Paul’s car collection
Map Reduce
What is the ownership pattern of colors by geography over time
(is purple trending in China?)
MongoDB and DigitalOcean Automation with Cloud Manager
MongoDB 3.4 – Multi-Model Database
Document
Rich JSON Data Structures
Flexible Schema
Global Scale
Relational
Left-Outer Join
Views
Schema Validation
Key/Value
Horizontal Scale
In-Memory
Search
Text Search
Multiple Languages
Faceted Search
Binaries
Files & Metadata
Encrypted
Graph
Graph & Hierarchical
Recursive Lookups
GeoSpatial
GeoJSON
2D & 2DSphere
Aggregation Pipeline
The aggregation pipeline is a
framework for data aggregation
modeled on the concept of data
processing pipelines. Documents enter
a multi-stage pipeline that transforms
the documents into aggregated
results.
MongoDB and DigitalOcean Automation with Cloud Manager
Let’s talk what’s
inside the your new
MongoDB cluster.
• Primary
• Secondary
• Votes and Elections
• Arbiters
• Hidden, delayed secondaries
• Config Servers
What Components Make Up MongoDB?
Replication
PRIMARY
SECONDARY SECONDARY
DRIVER
APPLICATION
Failure of Primary
PRIMARY
SECONDARY SECONDARY
DRIVER
APPLICATION
ELECTION TIME
OFFLINE
SECONDARY
DRIVER
APPLICATION
PRIMARY
WE LIVE!
RECOVERY
SECONDARY
DRIVER
APPLICATION
PRIMARY
Back to Biz
SECONDARY
SECONDARY
DRIVER
APPLICATION
PRIMARY
Sharding
SHARD
0
SHARD
1
SHARD
2
SHARD
3
ROUTER
mongos
DRIVER
APPLICATION
P
S S
CONFIG SERVERS
Sharding & Replication
ROUTER
mongos
DRIVER
APPLICATION
P
S S
P
S S
P
S S
P
S S
P
S S
CONFIG SERVERS
Helping you deploy in any environment
Control
Cloud ManagerOps Manager MongoDB Atlas
data: on-prem or cloud
ops: on-prem or cloud
data: on-prem or cloud
ops: cloud
Fully Managed Cloud
Convenience
Lots of Work, A New Database!
PATCHES
UPGRADES
SECURITY
BACKUPS
RECOVERY
99.999% UPTIME
UPSCALE
DOWNSCALE
MongoDB Cloud
Manager
The Easiest Way to
Get Started With
DigitalOcean (Ops!)
Example of Web App on DO Network
Cloud Manager
data: on-prem or cloud
ops: cloud
Example of Web App on DO Network
Cloud Manager
data: on-prem or cloud
ops: cloud
MongoDB –
Three droplet
cluster.
NodeJS–
Two droplet web app.
DigitalOcean -
Load Balancer
MongoDB and DigitalOcean Automation with Cloud Manager
MongoDB and DigitalOcean Automation with Cloud Manager
MongoDB and DigitalOcean Automation with Cloud Manager
MongoDB and DigitalOcean Automation with Cloud Manager
Configure Private IP Network
root@mongodb-1gb-nyc2-01:~# /sbin/ifconfig
eth1 | grep 'inet addr:' | cut -d: -f2| cut
-d' ' -f1
10.128.32.63
root@mongodb-1gb-nyc2-02:~# /sbin/ifconfig
eth1 | grep 'inet addr:' | cut -d: -f2| cut
-d' ' -f1
10.128.32.64
root@mongodb-1gb-nyc2-03:~# /sbin/ifconfig
eth1 | grep 'inet addr:' | cut -d: -f2| cut
-d' ' -f1
10.128.32.66
Hosts file or DNS
root@mongodb-1gb-nyc2-01:~# hostname -f
mongodb-1gb-nyc2-01
root@mongodb-1gb-nyc2-02:~# hostname -f
mongodb-1gb-nyc2-02
root@mongodb-1gb-nyc2-03:~# hostname -f
mongodb-1gb-nyc2-03
Create hosts file entry for each site and then enter it into
each server’s /etc/hosts/ file:
10.128.32.63 mongodb-1gb-nyc2-01
10.128.32.64 mongodb-1gb-nyc2-02
10.128.32.66 mongodb-1gb-nyc2-03
MongoDB and DigitalOcean Automation with Cloud Manager
MongoDB and DigitalOcean Automation with Cloud Manager
MongoDB and DigitalOcean Automation with Cloud Manager
Automate your install to Droplets
Finalize changes and deploy
Ready for your connection string!
Sophisticated Security Threats
Continuous Backup / Point-in-time Restore
Under the hood
● MongoDB Cloud Manager continuously backs up your data,
ensuring your backups are typically just a few seconds behind the
operational system
● Point-in-time backup of replica sets and consistent, cluster-wide
snapshots of sharded clusters. With MongoDB Cloud Manager,
you can easily and safely restore to precisely the moment you
need
● Compression and block-level deduplication technology keeps
your backup processes as efficient as possible
● Backups are securely stored in North America and Europe. For
location flexibility of your backup data, you can utilize MongoDB’s
mongodump / mongorestore tools
Operations Burden
PATCHES
UPGRADES
SECURITY
BACKUPS
RECOVERY
99.999% UPTIME
UPSCALE
DOWNSCALE
PERFORMANCE
UAT
STAGING
MONITORING
ALERTS
PROVISION
CONFIGURE
INSTALL
Join us at MongoDB World 2017
June 20-21
Chicago, IL
Bringing together 3000 developers, architects, IT professionals
and executive decision makers, MongoDB World is the foremost
conference dedicated to the database for giant ideas.
www.mongodb.com/events/mongodb-world-2017
25% Discount with JayGordon25
MongoDB and DigitalOcean Automation with Cloud Manager
MongoDB and DigitalOcean Automation with Cloud Manager

More Related Content

What's hot (17)

PPT
A Brief MongoDB Intro
Scott Hernandez
 
PPTX
Data liberty in an age post sql - with pizazz - as presented at cloudburst
andyelastacloud
 
PPTX
Social Analytics with MongoDB
Patrick Stokes
 
PDF
When to Use MongoDB
MongoDB
 
PDF
MongoDB for Analytics
MongoDB
 
ODP
Python and MongoDB
Christiano Anderson
 
PPTX
Webinar: Back to Basics: Thinking in Documents
MongoDB
 
PPTX
Introduction of search engine
Jinglun Li
 
PPTX
Back to Basics Webinar 4: Advanced Indexing, Text and Geospatial Indexes
MongoDB
 
PPTX
Back to Basics: My First MongoDB Application
MongoDB
 
PDF
MongoDB Europe 2016 - Graph Operations with MongoDB
MongoDB
 
KEY
Introduction to MongoDB
Alex Bilbie
 
PPTX
Back to Basics Webinar 5: Introduction to the Aggregation Framework
MongoDB
 
PDF
Mongodb
Scott Motte
 
PPTX
Data Governance with JSON Schema
MongoDB
 
PDF
FIFA fails, Guy Kawasaki and real estate in SF - find out about all three by ...
Elżbieta Bednarek
 
PPTX
Back to Basics Webinar 1 - Introduction to NoSQL
Joe Drumgoole
 
A Brief MongoDB Intro
Scott Hernandez
 
Data liberty in an age post sql - with pizazz - as presented at cloudburst
andyelastacloud
 
Social Analytics with MongoDB
Patrick Stokes
 
When to Use MongoDB
MongoDB
 
MongoDB for Analytics
MongoDB
 
Python and MongoDB
Christiano Anderson
 
Webinar: Back to Basics: Thinking in Documents
MongoDB
 
Introduction of search engine
Jinglun Li
 
Back to Basics Webinar 4: Advanced Indexing, Text and Geospatial Indexes
MongoDB
 
Back to Basics: My First MongoDB Application
MongoDB
 
MongoDB Europe 2016 - Graph Operations with MongoDB
MongoDB
 
Introduction to MongoDB
Alex Bilbie
 
Back to Basics Webinar 5: Introduction to the Aggregation Framework
MongoDB
 
Mongodb
Scott Motte
 
Data Governance with JSON Schema
MongoDB
 
FIFA fails, Guy Kawasaki and real estate in SF - find out about all three by ...
Elżbieta Bednarek
 
Back to Basics Webinar 1 - Introduction to NoSQL
Joe Drumgoole
 

Viewers also liked (20)

PDF
A Survey of IT Jobs in the Kingdom of Saudi Arabia 2017
Hend Al-Khalifa
 
PPT
Mr. Ludo Diels IEWP @ 2nd India-EU Water Forum @ World Sustainable Developmen...
India-EU Water Partnership
 
PPTX
Delfina Gómez, la candidata desconocida
Susana Gallardo
 
PPTX
Top 10 Digital Workplace Patterns #spscalgary
Kanwal Khipple
 
PDF
マイクロソフトが創る未来 医療編 20170401
Aya Tokura
 
PPTX
Elixir-Conf-Japan-2017-session-ohr486
Tsunenori Oohara
 
PDF
Infographic: Medicare Marketing: Direct Mail: Still The #1 Influencer For Tho...
Scott Levine
 
PDF
10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
HubSpot
 
PDF
How to Earn the Attention of Today's Buyer
HubSpot
 
PDF
25 Discovery Call Questions
HubSpot
 
PDF
Modern Prospecting Techniques for Connecting with Prospects (from Sales Hacke...
HubSpot
 
PDF
Behind the Scenes: Launching HubSpot Tokyo
HubSpot
 
PDF
HubSpot Diversity Data 2016
HubSpot
 
PDF
Why People Block Ads (And What It Means for Marketers and Advertisers) [New R...
HubSpot
 
PDF
What is Inbound Recruiting?
HubSpot
 
PDF
3 Proven Sales Email Templates Used by Successful Companies
HubSpot
 
PDF
Add the Women Back: Wikipedia Edit-a-Thon
HubSpot
 
PDF
Nova apresentação hinode
Júnior Portela
 
PPTX
Drive your Docs with Data - Conduit Conference 2017
Ed Marsh
 
PPTX
Okinawapm#4
cat2koban
 
A Survey of IT Jobs in the Kingdom of Saudi Arabia 2017
Hend Al-Khalifa
 
Mr. Ludo Diels IEWP @ 2nd India-EU Water Forum @ World Sustainable Developmen...
India-EU Water Partnership
 
Delfina Gómez, la candidata desconocida
Susana Gallardo
 
Top 10 Digital Workplace Patterns #spscalgary
Kanwal Khipple
 
マイクロソフトが創る未来 医療編 20170401
Aya Tokura
 
Elixir-Conf-Japan-2017-session-ohr486
Tsunenori Oohara
 
Infographic: Medicare Marketing: Direct Mail: Still The #1 Influencer For Tho...
Scott Levine
 
10 Things You Didn’t Know About Mobile Email from Litmus & HubSpot
HubSpot
 
How to Earn the Attention of Today's Buyer
HubSpot
 
25 Discovery Call Questions
HubSpot
 
Modern Prospecting Techniques for Connecting with Prospects (from Sales Hacke...
HubSpot
 
Behind the Scenes: Launching HubSpot Tokyo
HubSpot
 
HubSpot Diversity Data 2016
HubSpot
 
Why People Block Ads (And What It Means for Marketers and Advertisers) [New R...
HubSpot
 
What is Inbound Recruiting?
HubSpot
 
3 Proven Sales Email Templates Used by Successful Companies
HubSpot
 
Add the Women Back: Wikipedia Edit-a-Thon
HubSpot
 
Nova apresentação hinode
Júnior Portela
 
Drive your Docs with Data - Conduit Conference 2017
Ed Marsh
 
Okinawapm#4
cat2koban
 
Ad

Similar to MongoDB and DigitalOcean Automation with Cloud Manager (20)

PPTX
Webinar: General Technical Overview of MongoDB for Ops Teams
MongoDB
 
PPTX
MongoDB 3.4 webinar
Andrew Morgan
 
PDF
Mongo db 3.4 Overview
Norberto Leite
 
PDF
MongoDB Administration 101
MongoDB
 
PDF
MongoDB 4.0 새로운 기능 소개
Ha-Yang(White) Moon
 
PPTX
Conceptos básicos. Seminario web 6: Despliegue de producción
MongoDB
 
PPTX
MongoDB Evenings Toronto - Monolithic to Microservices with MongoDB
MongoDB
 
PDF
Using MongoDB and Python
Mike Bright
 
PDF
2016 feb-23 pyugre-py_mongo
Michael Bright
 
PDF
Building Your First MongoDB Application
Tugdual Grall
 
PPTX
MongoDB
Bembeng Arifin
 
PPTX
MongoDB Days Silicon Valley: Jumpstart: Ops/Admin 101
MongoDB
 
PPTX
Ops Jumpstart: Admin 101
MongoDB
 
PDF
Mongodb The Definitive Guide 3rd Edition 3rd Edition Kristina Chodorow Eoin B...
ikareugine
 
PPTX
Onomi - MongoDB Introduction
Onomi
 
PPTX
How to learn MongoDB for beginner's
surajkumartpoint
 
PPTX
Jumpstart: Your Introduction To MongoDB
MongoDB
 
PDF
Neotys conference
Tugdual Grall
 
PDF
MongoDB Basics
Sarang Shravagi
 
PPTX
Dev Jumpstart: Build Your First App with MongoDB
MongoDB
 
Webinar: General Technical Overview of MongoDB for Ops Teams
MongoDB
 
MongoDB 3.4 webinar
Andrew Morgan
 
Mongo db 3.4 Overview
Norberto Leite
 
MongoDB Administration 101
MongoDB
 
MongoDB 4.0 새로운 기능 소개
Ha-Yang(White) Moon
 
Conceptos básicos. Seminario web 6: Despliegue de producción
MongoDB
 
MongoDB Evenings Toronto - Monolithic to Microservices with MongoDB
MongoDB
 
Using MongoDB and Python
Mike Bright
 
2016 feb-23 pyugre-py_mongo
Michael Bright
 
Building Your First MongoDB Application
Tugdual Grall
 
MongoDB Days Silicon Valley: Jumpstart: Ops/Admin 101
MongoDB
 
Ops Jumpstart: Admin 101
MongoDB
 
Mongodb The Definitive Guide 3rd Edition 3rd Edition Kristina Chodorow Eoin B...
ikareugine
 
Onomi - MongoDB Introduction
Onomi
 
How to learn MongoDB for beginner's
surajkumartpoint
 
Jumpstart: Your Introduction To MongoDB
MongoDB
 
Neotys conference
Tugdual Grall
 
MongoDB Basics
Sarang Shravagi
 
Dev Jumpstart: Build Your First App with MongoDB
MongoDB
 
Ad

More from Jay Gordon (6)

PPTX
Modernizing Your Application With Containers
Jay Gordon
 
PDF
Checklists ✅​ Good enough for NASA and Van Halen?​ ​ Good enough for your app!​
Jay Gordon
 
PPTX
MongoDB Charts Meetup - 7-24-2018
Jay Gordon
 
PPTX
Solving the Database Problem
Jay Gordon
 
PDF
On Being A Developer Advocate
Jay Gordon
 
PPTX
My First Cluster with MongoDB Atlas
Jay Gordon
 
Modernizing Your Application With Containers
Jay Gordon
 
Checklists ✅​ Good enough for NASA and Van Halen?​ ​ Good enough for your app!​
Jay Gordon
 
MongoDB Charts Meetup - 7-24-2018
Jay Gordon
 
Solving the Database Problem
Jay Gordon
 
On Being A Developer Advocate
Jay Gordon
 
My First Cluster with MongoDB Atlas
Jay Gordon
 

Recently uploaded (20)

PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
July Patch Tuesday
Ivanti
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
July Patch Tuesday
Ivanti
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
Biography of Daniel Podor.pdf
Daniel Podor
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 

MongoDB and DigitalOcean Automation with Cloud Manager

  • 2. Jay Gordon Developer Advocate - NYC @jaydestro { "name" : "Jay Gordon", "what" : Dev Advocate, "former roles" : [ { "title" : "SysAdmin", "company": "BuzzFeed" }, { "title" : "Platform Engineer", "company" : "DigitalOcean" } Area Man Talks About Software
  • 3. Jay Gordon Developer Advocate - NYC @jaydestro GET TO THE POINT. Topics: - Introducing MongoDB - What’s under the hood? - What makes up MongoDB? - How can I configure MongoDB with DO?
  • 4. Jay Gordon Developer Advocate - NYC @jaydestro GET TO THE POINT. Not gonna: - Use a silly analogy about MongoDB and my favorite sports personality. - Badmouth other DBs. - Code live.
  • 5. The Modern App • High Concurrency • High Throughput • Low Latency • Real-time analytics • Cost Effective • Zero downtime
  • 10. We’re Talking about Documents.
  • 11. We’re Talking about Documents.
  • 12. We’re Talking about Documents.
  • 13. We’re Talking about Documents.
  • 14. Your data is stored in JSON Style game { player_one: PlayerID, player_two: PlayerID, moves [ { token: <moveToken1>, ts: timestamp1 }, { token: <moveToken2>, ts: timestamp2 ... ], game_parameters: { param1 : v, param2 : v, ... }, start_time: ts, end_time: ts, state: <state>, // in_play, mate, resign, draw winner: W || B || D }
  • 15. Documents are Rich Data Structures { first_name: ‘Paul’, surname: ‘Miller’, cell: 447557505611, city: ‘London’, location: [45.123,47.232], Profession: [‘banking’, ‘finance’, ‘trader’], cars: [ { model: ‘Bentley’, year: 1973, value: 100000, … }, { model: ‘Rolls Royce’, year: 1965, value: 330000, … } ] } Fields can contain an array of sub-documents Typed field values Fields can contain arraysFields Fields can be indexed and queried at any level ORM layer removed – Data is already an object!
  • 16. Documents are Flexible { sku: ‘PAINTZXC123’, product_name: ‘Acme Paint’, color: [‘Red’, ‘Green’], size_oz: [8, 32], finish: [‘satin’, ‘eggshell’] } { sku: ‘TSHRTASD43546’, product_name: ‘T-shirt’, size: [‘S’, ‘M’, ‘L’, ‘XL’], color: [‘Heather Gray’ … ], material: ‘100% cotton’, wash: ‘cold’, dry: ‘tumble dry low’ } { sku: ‘CYCLBVCX6543’, product_name: ‘Mountain Bike’, brake_style: ‘mechanical disc’, color: ‘grey’, frame_material: ‘aluminum’, no_speeds: 21, package_height: ‘7.5x32.9x55’, weight_lbs: 44.05, suspension_type: ‘dual’, wheel_size_in: 26 } Documents in the same product catalog collection in MongoDB
  • 19. Expressive Query Language Rich Queries Find Paul’s cars Find everybody in London with a car between 1970 and 1980 Geospatial Find all of the car owners within 5km of Trafalgar Sq. Text Search Find all the cars described as having leather seats Aggregation Calculate the average value of Paul’s car collection Map Reduce What is the ownership pattern of colors by geography over time (is purple trending in China?)
  • 21. MongoDB 3.4 – Multi-Model Database Document Rich JSON Data Structures Flexible Schema Global Scale Relational Left-Outer Join Views Schema Validation Key/Value Horizontal Scale In-Memory Search Text Search Multiple Languages Faceted Search Binaries Files & Metadata Encrypted Graph Graph & Hierarchical Recursive Lookups GeoSpatial GeoJSON 2D & 2DSphere
  • 22. Aggregation Pipeline The aggregation pipeline is a framework for data aggregation modeled on the concept of data processing pipelines. Documents enter a multi-stage pipeline that transforms the documents into aggregated results.
  • 24. Let’s talk what’s inside the your new MongoDB cluster.
  • 25. • Primary • Secondary • Votes and Elections • Arbiters • Hidden, delayed secondaries • Config Servers What Components Make Up MongoDB?
  • 27. Failure of Primary PRIMARY SECONDARY SECONDARY DRIVER APPLICATION
  • 32. Sharding & Replication ROUTER mongos DRIVER APPLICATION P S S P S S P S S P S S P S S CONFIG SERVERS
  • 33. Helping you deploy in any environment Control Cloud ManagerOps Manager MongoDB Atlas data: on-prem or cloud ops: on-prem or cloud data: on-prem or cloud ops: cloud Fully Managed Cloud Convenience
  • 34. Lots of Work, A New Database! PATCHES UPGRADES SECURITY BACKUPS RECOVERY 99.999% UPTIME UPSCALE DOWNSCALE
  • 35. MongoDB Cloud Manager The Easiest Way to Get Started With DigitalOcean (Ops!)
  • 36. Example of Web App on DO Network Cloud Manager data: on-prem or cloud ops: cloud
  • 37. Example of Web App on DO Network Cloud Manager data: on-prem or cloud ops: cloud MongoDB – Three droplet cluster. NodeJS– Two droplet web app. DigitalOcean - Load Balancer
  • 42. Configure Private IP Network root@mongodb-1gb-nyc2-01:~# /sbin/ifconfig eth1 | grep 'inet addr:' | cut -d: -f2| cut -d' ' -f1 10.128.32.63 root@mongodb-1gb-nyc2-02:~# /sbin/ifconfig eth1 | grep 'inet addr:' | cut -d: -f2| cut -d' ' -f1 10.128.32.64 root@mongodb-1gb-nyc2-03:~# /sbin/ifconfig eth1 | grep 'inet addr:' | cut -d: -f2| cut -d' ' -f1 10.128.32.66
  • 43. Hosts file or DNS root@mongodb-1gb-nyc2-01:~# hostname -f mongodb-1gb-nyc2-01 root@mongodb-1gb-nyc2-02:~# hostname -f mongodb-1gb-nyc2-02 root@mongodb-1gb-nyc2-03:~# hostname -f mongodb-1gb-nyc2-03 Create hosts file entry for each site and then enter it into each server’s /etc/hosts/ file: 10.128.32.63 mongodb-1gb-nyc2-01 10.128.32.64 mongodb-1gb-nyc2-02 10.128.32.66 mongodb-1gb-nyc2-03
  • 47. Automate your install to Droplets
  • 49. Ready for your connection string!
  • 51. Continuous Backup / Point-in-time Restore Under the hood ● MongoDB Cloud Manager continuously backs up your data, ensuring your backups are typically just a few seconds behind the operational system ● Point-in-time backup of replica sets and consistent, cluster-wide snapshots of sharded clusters. With MongoDB Cloud Manager, you can easily and safely restore to precisely the moment you need ● Compression and block-level deduplication technology keeps your backup processes as efficient as possible ● Backups are securely stored in North America and Europe. For location flexibility of your backup data, you can utilize MongoDB’s mongodump / mongorestore tools
  • 53. Join us at MongoDB World 2017 June 20-21 Chicago, IL Bringing together 3000 developers, architects, IT professionals and executive decision makers, MongoDB World is the foremost conference dedicated to the database for giant ideas. www.mongodb.com/events/mongodb-world-2017 25% Discount with JayGordon25