SlideShare a Scribd company logo
1 of 123
Download to read offline
Asya Kamsky,
Lead Product Manager
MongoDB
Diagnostics and Debugging 3.4
Asya Kamsky,
Lead Product Manager
MongoDB
Diagnostics and Debugging 3.4
“
I thought of my old teacher Joe Bell, ... of his eerie
trick of spotting details. If he were a detective he
would surely reduce this ... business to something
nearer an exact science.
—Arthur Conan Doyle
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red
x still appears, you may have to delete the image and then insert it again.
The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red
x still appears, you may have to delete the image and then insert it again.
Understanding The Patient
#MDBW16
Understanding The Patient
Understand the system
Knowledge
Monitor trends over time
Trends
Record all metrics "at rest"
Baseline
Gathering Data
“Data! Data! Data! 
I can't make bricks without clay.”
-- Sherlock Holmes, 
The Adventure of the Copper Beeches
“There is nothing like first-hand evidence.”
-- Sherlock Holmes, A Study in Scarlet
Available Tools
#MDBW16
Available Tools: Say "AH"
#MDBW16
Available Tools: Say "AH"
#MDBW16
Available Tools: Say "AH"
#MDBW16
Available Tools: Say "AH"
> db.isMaster( )
> rs.conf( )
> rs.status( )
> sh.status( )
> db.version( )
> db.serverCmdLineOpts( )
#MDBW16
Available Tools: Say "AH"
#MDBW16
> show dbs
> show collections
> db.getCollectionNames().forEach(function(c) {
printjson(db.getCollection(c).getIndexes());
});
Available Tools: Say "AH"
#MDBW16
Available Tools: Say "AH"
#MDBW16
Available Tools: Compass
#MDBW16
Available Tools: OS
% free
% blockdev --report
% dmesg
% ulimit -a
% ifconfig, ip <...>, iptables
% iostat
% netstat
% top; htop
% perf
% iperf3
#MDBW16
Available Tools: OS for MongoDB
% mongostat
% mongotop
mongod logs
2014-09-01T15:50:03.184-0004 [conn208] query
data.activity query: { $query: { _updated_at: { $gt: new
Date(1396459946346) }, _to: "_UserA" } }, $orderby:
{ _updated_at: -1 } } planSummary: IXSCAN { _to: 1,
_created_at: -1 } ntoreturn:100 ntoskip:0 nscanned:19692
nscannedObjects:19692 numYields:170 locks(micros) r:
283957 nreturned:65 reslen:24939 342ms
2014-09-01T15:50:03.184-0004 [conn208] query
data.activity query: { $query: { _updated_at: { $gt: new
Date(1396459946346) }, _to: "_UserA" } }, $orderby:
{ _updated_at: -1 } } planSummary: IXSCAN { _to: 1,
_created_at: -1 } ntoreturn:100 ntoskip:0 nscanned:19692
nscannedObjects:19692 numYields:170 locks(micros) r:
283957 nreturned:65 reslen:24939 342ms
mongod logs
2015-05-26T23:33:32.774-0500 I
2015-05-28T12:37:11.440-0500 I
2015-05-28T12:38:35.839-0500 I
D, I, W, E, F
3.0 mongod logs
2015-05-26T23:33:32.774-0500 I COMMAND
2015-05-28T12:37:11.440-0500 I NETWORK
2015-05-28T12:38:35.839-0500 I QUERY
3.0
COMMAND,NETWORK,QUERY,REPL,ACCESS,INDEX,JOURNAL,SHARDING,WRITE,-
mongod logs
2015-05-26T23:33:32.774-0500 I COMMAND [conn45] command admin.$cmd command:
listDatabases { listDatabases: 1.0 } ntoskip:0 keyUpdates:0 writeConflicts:0
numYields:0 reslen:393 locks:{ Global: { acquireCount: { r: 12 } },
Database: { acquireCount: { r: 6 } } } 321ms
2015-05-28T12:37:11.440-0500 I NETWORK [initandlisten] connection accepted
from 127.0.0.1:48625 #183 (21 connections now open)
2015-05-28T12:38:35.839-0500 I QUERY [conn183] getmore
tableau.flights201406 query: { origin_city_market_id: 31703.0 } cursorid:
61957110347 ntoreturn:0 cursorExhausted:1 keyUpdates:0 writeConflicts:0
numYields:176 nreturned:22579 reslen:1332181 locks:{ Global: { acquireCount:
{ r: 354 } }, Database: { acquireCount: { r: 177 } }, Collection:
{ acquireCount: { r: 177 } } } 114ms
3.0 mongod logs
3.2 mongod logs
2016-06-23T10:34:41.559-0700 I COMMAND [conn26] command test.c
command: find { find: "c", filter: { a: { $elemMatch: { v: { $gte: 3.0, $lt:
4.0 } } } } } planSummary: IXSCAN { a.v: 1.0 }
keysExamined:2 docsExamined:1 fromMultiPlanner:1 cursorExhausted:1
keyUpdates:0 writeConflicts:0 numYields:1 nreturned:1 reslen:187
locks:{ Global: { acquireCount: { r: 4 } }, Database: { acquireCount: { r:
2 } }, Collection: { acquireCount: { r: 2 } } } protocol:op_command 110ms
3.2 mongod logs
2016-06-23T10:34:41.559-0700 I COMMAND [conn26] command test.c
command: find { find: "c", filter: { a: { $elemMatch: { v: { $gte: 3.0, $lt:
4.0 } } } } } planSummary: IXSCAN { a.v: 1.0 }
keysExamined:2 docsExamined:1 fromMultiPlanner:1 cursorExhausted:1
keyUpdates:0 writeConflicts:0 numYields:1 nreturned:1 reslen:187
locks:{ Global: { acquireCount: { r: 4 } }, Database: { acquireCount: { r:
2 } }, Collection: { acquireCount: { r: 2 } } } protocol:op_command 110ms
3.2 mongod logs
3.4 mongod logs
3.4 mongod logs
2016-06-01T15:30:04.373-0700 I COMMAND [conn99] command socialite.following
command: aggregate { aggregate: "following", pipeline: [ { $match: { _f: "45705" } },
{ $group: { _id: null, followees: { $addToSet: "$_t" } } }, { $lookup: { from: "following",
localField: "followees", foreignField: "_f", as: "fofollowees" } }, { $project: { fofs: { $setUnion:
[ "$followees", "$fofollowees._t" ] } } } ] } planSummary: IXSCAN { _f: 1, _t: 1 } keysExamined:1
docsExamined:0 numYields:11 reslen:316214 locks:{ Global: { acquireCount: { r: 3800 } },
Database: { acquireCount: { r: 1900 } }, Collection: { acquireCount: { r: 1900 } } }
protocol:op_query 218ms
3.4 mongod logs
2016-06-25T23:38:27.346-0500 I WRITE [conn128] update ycsb.usertable query:
{ _id: "user7074965863272626663" } planSummary: IDHACK update: { $set: { field1: BinData(0, 2
} } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 numYields:1 locks:{ Global: {
acquireCount: { r: 3, w: 3 } }, Database: { acquireCount: { w: 3 } }, Collection: { acquireCount:
{ w: 2 } }, Metadata: { acquireCount: { w: 1 } }, oplog: { acquireCount: { w: 1 } } } 11ms
> db.getLogComponents()
> db.getLogComponents()
{ "verbosity" : 1,
"accessControl" : { "verbosity" : -1},
"command" : { "verbosity" : -1},
"control" : { "verbosity" : -1},
"geo" : { "verbosity" : -1},
"index" : { "verbosity" : -1},
"network" : { "verbosity" : -1},
"query" : { "verbosity" : -1},
"replication" : { "verbosity" : -1},
"sharding" : { "verbosity" : -1},
"storage" : { "verbosity" : -1,
"journal" : { "verbosity" : -1}},
"write" : { "verbosity" : -1}
}
> db.getLogComponents()
{ "verbosity" : 1,
"accessControl" : { "verbosity" : -1},
"command" : { "verbosity" : -1},
"control" : { "verbosity" : -1},
"executor" : { "verbosity" : -1},
"geo" : { "verbosity" : -1},
"index" : { "verbosity" : -1},
"network" : { "verbosity" : -1},
"query" : { "verbosity" : -1},
"replication" : { "verbosity" : -1},
"sharding" : { "verbosity" : -1},
"storage" : { "verbosity" : -1,
"journal" : { "verbosity" : -1}},
"write" : { "verbosity" : -1},
"ftdc" : { "verbosity" : -1}
}
> db.setLogLevel( logLevel, component )
> db.setLogLevel( 1, "sharding" )
> db.setLogLevel( 2, "query" )
"It is of the highest importance ... to be able to recognize,
out of a number of facts, which are incidental and which vital. "
Sherlock Holmes, The Reigate Puzzle
https://github.com/rueckstiess/mtools
byThomasRückstieß
https://github.com/rueckstiess/mtools
byThomasRückstieß
#MDBW16
mplotqueries
$ mplotqueries --help
usage: mplotqueries [OPTIONS] [logfile [logfile ...]]
A script to plot various information from logfiles. ...
#MDBW16
mplotqueries
$ mplotqueries --help
usage: mplotqueries [OPTIONS] [logfile [logfile ...]]
A script to plot various information from logfiles. ...
optional arguments:
--type {nscanned/n,rsstate,connchurn,durline,histogram,range,scatter,event}
type of plot (default=scatter with --yaxis duration)
#MDBW16
mplotqueries
$ mplotqueries --help
usage: mplotqueries [OPTIONS] [logfile [logfile ...]]
A script to plot various information from logfiles. ...
optional arguments:
--type {nscanned/n,rsstate,connchurn,durline,histogram,range,scatter,event}
type of plot (default=scatter with --yaxis duration)
--group GROUP specify value to group on.
All basic plot types can group on
'namespace', 'operation', 'thread', 'pattern' ...
"... what is out of the common is usually a guide
rather than a hindrance."
— Sherlock Holmes, A Study in Scarlet
mplotqueries
% mplotqueries firstmongo.log --type nscanned/n
% mplotqueries firstmongo.log --type nscanned/n
2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary:
COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72
reslen:32707 30129ms
mplotqueries
% mplotqueries firstmongo.log --type nscanned/n
2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary:
COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72
reslen:32707 30129ms
mplotqueries
% mplotqueries firstmongo.log --type nscanned/n
2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary:
COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72
reslen:32707 30129ms
mplotqueries
% mplotqueries firstmongo.log --type nscanned/n
2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary:
COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72
reslen:32707 30129ms
2014-06-17T17:13:47.607 [conn1569990] query db2.coll query: { time: { $lt: "2014-06-17 17:14:05", $gte: "2014-06-17 17:05:05" }, status: 8 }
planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:2057564 nscannedObjects:2057564 keyUpdates:0 numYields:5008 locks(micros) r:11557172
nreturned:56 reslen:18745 13086ms
mplotqueries
% mplotqueries firstmongo.log --type nscanned/n
2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary:
COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72
reslen:32707 30129ms
2014-06-17T17:13:47.607 [conn1569990] query db2.coll query: { time: { $lt: "2014-06-17 17:14:05", $gte: "2014-06-17 17:05:05" }, status: 8 }
planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:2057564 nscannedObjects:2057564 keyUpdates:0 numYields:5008 locks(micros) r:11557172
nreturned:56 reslen:18745 13086ms
mplotqueries
% mplotqueries firstmongo.log --type nscanned/n
2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary:
COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72
reslen:32707 30129ms
2014-06-17T17:13:47.607 [conn1569990] query db2.coll query: { time: { $lt: "2014-06-17 17:14:05", $gte: "2014-06-17 17:05:05" }, status: 8 }
planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:2057564 nscannedObjects:2057564 keyUpdates:0 numYields:5008 locks(micros) r:11557172
nreturned:56 reslen:18745 13086ms
mplotqueries
% mplotqueries updates?.log
% mplotqueries updates?.log
% mplotqueries updates?.log
% mplotqueries updates?.log
% mplotqueries updates?.log
"Eliminate all other factors, and the 
one which remains must be the truth."

Sherlock Holmes -The Sign of Four
#MDBW16
Available Tools
% mongostat
#MDBW16
mongostat
#MDBW16
--discover
mongostat
#MDBW16
mongostat
insert query update delete getmore command % dirty % used flushes vsize res faults qr|qw ar|aw netIn netOut conn ReplSetName role ts
#MDBW16
Trends
#MDBW16
Available Tools
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
#MDBW16
Available Tools: in the Cloud
% mplotqueries –type connchurn
#MDBW16
db.currentOp()
#MDBW16
db.currentOp()
> db.currentOp({secs_running:{$gt:10}})
{ "desc" : "conn3482",
"threadId" : "140512575297280",
"connectionId" : 3482,
"client_s" : "10.0.149.179:55295",
"active" : true,
"opid" : "SocialiteAtlas-shard-2:55547103",
"secs_running" : 13,
"microsecs_running" : NumberLong(13483812),
"op" : "query",
"ns" : "db1.coll1",
"numYields" : 48815,
"query" : {
"field1" : 5,
#MDBW16
db.currentOp()
> db.currentOp({desc:/^conn/,secs_running:{$gt:0}}).inprog.forEach(function(op) {
print(op.opid, op.op, op.ns, op.secs_running);
});
SocialiteAtlas-shard-0:68479014 query socialite.content 3
SocialiteAtlas-shard-0:68479730 query socialite.content 2
SocialiteAtlas-shard-0:68480174 query socialite.content 1
SocialiteAtlas-shard-0:68479234 query socialite.content 2
SocialiteAtlas-shard-0:68480136 query socialite.content 1
SocialiteAtlas-shard-0:68479529 query socialite.content 2
SocialiteAtlas-shard-0:68480182 query socialite.content 1
SocialiteAtlas-shard-0:68480261 query socialite.content 1
>
db.killOp ( opid )
#MDBW16
Asya Kamsky,
Lead Product Manager
MongoDB
Diagnostics and Debugging 3.4
Title Slide Option 1
Click here to add speaker name and title
Title Slide Option 2
Click here to add speaker name
and title
This is divider slide option 2
#MDBW16
Click to add title: keep it to 56 characters w/spaces
This is a typical content slide with full width body.
•  First level bullet list
•  Second level bullet list
•  Third level bullet list
#MDBW16
Two content
Click to add text.
•  First level bullet list
•  Second level bullet list
•  Third level bullet list
Click to add text.
•  First level bullet list
•  Second level bullet list
•  Third level bullet list
#MDBW16
Left content
Click to add text.
•  First level bullet list
•  Second level bullet list
#MDBW16
Left content
Click to add text.
•  First level bullet list
•  Second level bullet list
#MDBW16
Pie Chart
64%
25%
11%
1st Qtr 2nd Qtr 3rd Qtr
1st Quarter
Lorem ipsum dolor sit amet, onsectetur adipiscing
elit. Praesent sodales odio sit amet odio tristique .
2nd Quarter
Lorem ipsum dolor sit amet, onsectetur adipiscing
elit. Praesent sodales odio sit amet odio tristique .
3rd Quarter
Lorem ipsum dolor sit amet, onsectetur adipiscing
elit. Praesent sodales odio sit amet odio tristique .
#MDBW16
Bar Graph
0
1
2
3
4
5
6
Category 1 Category 2 Category 3 Category 4
Chart Title
Series 1 Series 2 Series 3
#MDBW16
Column Header 1 Column Header 2 Column Header 3 Column Header 4 Column Header 5
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet
Table
#MDBW16
Title only
#MDBW16
Coding Example – Light Background
// Retrieve
var MongoClient = require('mongodb').MongoClient;
// Connect to the db
MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) {
if(err) { return console.dir(err); }
db.collection('test', function(err, collection) {});
db.collection('test', {w:1}, function(err, collection) {});
db.createCollection('test', function(err, collection) {});
db.createCollection('test', {w:1}, function(err, collection) {});
});
#MDBW16
Coding Example – Dark Background
// Retrieve
var MongoClient = require('mongodb').MongoClient;
// Connect to the db
MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) {
if(err) { return console.dir(err); }
db.collection('test', function(err, collection) {});
db.collection('test', {w:1}, function(err, collection) {});
db.createCollection('test', function(err, collection) {});
db.createCollection('test', {w:1}, function(err, collection) {});
});
#MDBW16
List slide – can also be used for agenda
Lorem ipsum dolor sit amet,
onsectetur adipiscing elit. Praesent
sodales odio sit amet odio tristique
sit elit.
Lorem Ipsum
01 Lorem ipsum dolor sit amet,
onsectetur adipiscing elit. Praesent
sodales odio sit amet odio tristique
sit elit.
Lorem Ipsum
03Lorem ipsum dolor sit amet,
onsectetur adipiscing elit. Praesent
sodales odio sit amet odio tristique
sit elit.
Lorem Ipsum
02
Lorem ipsum dolor sit amet,
onsectetur adipiscing elit. Praesent
sodales odio sit amet odio tristique
sit elit.
Lorem Ipsum
05 Lorem ipsum dolor sit amet,
onsectetur adipiscing elit. Praesent
sodales odio sit amet odio tristique
sit elit.
Lorem Ipsum
06Lorem ipsum dolor sit amet,
onsectetur adipiscing elit. Praesent
sodales odio sit amet odio tristique
sit elit.
Lorem Ipsum
05
#MDBW16
Columns and icons with copy (option 1)
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique.
Linked
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique.
Planning
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique.
Writing
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique.
Research
#MDBW16
Columns and icons with copy (option 2)
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique .
Linked
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique .
Planning
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique .
Writing
Lorem ipsum dolor sit
amet, onsectetur
adipiscing elit.
Praesent sodales odio
sit amet odio tristique .
Research
#MDBW16
Timeline or progress
2013
Lorem ipsum dolor sit amet,
onsectetur adipiscing elit.
Praesent sodales odio sit
amet odio tristique sit elit.
Lorem ipsum dolor sit amet,
onsectetur adipiscing elit.
Praesent sodales odio sit
amet odio tristique sit elit.
2014
2015
Lorem ipsum dolor sit amet,
onsectetur adipiscing elit.
Praesent sodales odio sit
amet odio tristique sit elit.
Lorem ipsum dolor sit amet,
onsectetur adipiscing elit.
Praesent sodales odio sit
amet odio tristique sit elit.
2016
“
Quote sample. Lorem ipsum dolor sit amet,
onsectetur adipiscing elit amet sodales. Praesent
sodales odio sit amet odio tristique. Lorem ipsum
dolor sit amet, onsectetur adipiscing elit. Praesent
sodales odio sit amet odio tristique. Lorem ipsum
dolor sit amet, onsectetur adipiscing elit.”
MongoDB Europe 2016 - Debugging MongoDB Performance

More Related Content

What's hot

MongoDB Performance Debugging
MongoDB Performance DebuggingMongoDB Performance Debugging
MongoDB Performance Debugging
MongoDB
 

What's hot (20)

MongoDB World 2016: Deciphering .explain() Output
MongoDB World 2016: Deciphering .explain() OutputMongoDB World 2016: Deciphering .explain() Output
MongoDB World 2016: Deciphering .explain() Output
 
MongoDB Europe 2016 - Graph Operations with MongoDB
MongoDB Europe 2016 - Graph Operations with MongoDBMongoDB Europe 2016 - Graph Operations with MongoDB
MongoDB Europe 2016 - Graph Operations with MongoDB
 
Webinar: Index Tuning and Evaluation
Webinar: Index Tuning and EvaluationWebinar: Index Tuning and Evaluation
Webinar: Index Tuning and Evaluation
 
Webinar: Exploring the Aggregation Framework
Webinar: Exploring the Aggregation FrameworkWebinar: Exploring the Aggregation Framework
Webinar: Exploring the Aggregation Framework
 
Getting Started with MongoDB and NodeJS
Getting Started with MongoDB and NodeJSGetting Started with MongoDB and NodeJS
Getting Started with MongoDB and NodeJS
 
Back to Basics Webinar 4: Advanced Indexing, Text and Geospatial Indexes
Back to Basics Webinar 4: Advanced Indexing, Text and Geospatial IndexesBack to Basics Webinar 4: Advanced Indexing, Text and Geospatial Indexes
Back to Basics Webinar 4: Advanced Indexing, Text and Geospatial Indexes
 
はじめてのMongoDB
はじめてのMongoDBはじめてのMongoDB
はじめてのMongoDB
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...
Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...
Webinaire 2 de la série « Retour aux fondamentaux » : Votre première applicat...
 
Back to Basics Webinar 3: Schema Design Thinking in Documents
 Back to Basics Webinar 3: Schema Design Thinking in Documents Back to Basics Webinar 3: Schema Design Thinking in Documents
Back to Basics Webinar 3: Schema Design Thinking in Documents
 
MongoDB + Java - Everything you need to know
MongoDB + Java - Everything you need to know MongoDB + Java - Everything you need to know
MongoDB + Java - Everything you need to know
 
Mongo db presentation
Mongo db presentationMongo db presentation
Mongo db presentation
 
MongoDB - Aggregation Pipeline
MongoDB - Aggregation PipelineMongoDB - Aggregation Pipeline
MongoDB - Aggregation Pipeline
 
Back to Basics, webinar 2: La tua prima applicazione MongoDB
Back to Basics, webinar 2: La tua prima applicazione MongoDBBack to Basics, webinar 2: La tua prima applicazione MongoDB
Back to Basics, webinar 2: La tua prima applicazione MongoDB
 
Agg framework selectgroup feb2015 v2
Agg framework selectgroup feb2015 v2Agg framework selectgroup feb2015 v2
Agg framework selectgroup feb2015 v2
 
Building a Scalable Inbox System with MongoDB and Java
Building a Scalable Inbox System with MongoDB and JavaBuilding a Scalable Inbox System with MongoDB and Java
Building a Scalable Inbox System with MongoDB and Java
 
MongoDB Performance Debugging
MongoDB Performance DebuggingMongoDB Performance Debugging
MongoDB Performance Debugging
 
Mythbusting: Understanding How We Measure the Performance of MongoDB
Mythbusting: Understanding How We Measure the Performance of MongoDBMythbusting: Understanding How We Measure the Performance of MongoDB
Mythbusting: Understanding How We Measure the Performance of MongoDB
 
Indexing with MongoDB
Indexing with MongoDBIndexing with MongoDB
Indexing with MongoDB
 
Beyond the Basics 2: Aggregation Framework
Beyond the Basics 2: Aggregation Framework Beyond the Basics 2: Aggregation Framework
Beyond the Basics 2: Aggregation Framework
 

Viewers also liked

Viewers also liked (20)

MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB AtlasMongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
 
Eventually Consistent
Eventually ConsistentEventually Consistent
Eventually Consistent
 
Concurrency Control in MongoDB 3.0
Concurrency Control in MongoDB 3.0Concurrency Control in MongoDB 3.0
Concurrency Control in MongoDB 3.0
 
MongoDB Europe 2016 - MongoDB, Ops Manager & Docker at SNCF
MongoDB Europe 2016 - MongoDB, Ops Manager & Docker at SNCFMongoDB Europe 2016 - MongoDB, Ops Manager & Docker at SNCF
MongoDB Europe 2016 - MongoDB, Ops Manager & Docker at SNCF
 
MongoDB Europe 2016 - Using MongoDB to Build a Fast and Scalable Content Repo...
MongoDB Europe 2016 - Using MongoDB to Build a Fast and Scalable Content Repo...MongoDB Europe 2016 - Using MongoDB to Build a Fast and Scalable Content Repo...
MongoDB Europe 2016 - Using MongoDB to Build a Fast and Scalable Content Repo...
 
MongoDB Europe 2016 - Building WiredTiger
MongoDB Europe 2016 - Building WiredTigerMongoDB Europe 2016 - Building WiredTiger
MongoDB Europe 2016 - Building WiredTiger
 
MongoDB Europe 2016 - Deploying MongoDB on NetApp storage
MongoDB Europe 2016 - Deploying MongoDB on NetApp storageMongoDB Europe 2016 - Deploying MongoDB on NetApp storage
MongoDB Europe 2016 - Deploying MongoDB on NetApp storage
 
Webinar: Data Streaming with Apache Kafka & MongoDB
Webinar: Data Streaming with Apache Kafka & MongoDBWebinar: Data Streaming with Apache Kafka & MongoDB
Webinar: Data Streaming with Apache Kafka & MongoDB
 
MongoDB Europe 2016 - Choosing Between 100 Billion Travel Options – Instant S...
MongoDB Europe 2016 - Choosing Between 100 Billion Travel Options – Instant S...MongoDB Europe 2016 - Choosing Between 100 Billion Travel Options – Instant S...
MongoDB Europe 2016 - Choosing Between 100 Billion Travel Options – Instant S...
 
MongoDB Europe 2016 - Welcome
MongoDB Europe 2016 - WelcomeMongoDB Europe 2016 - Welcome
MongoDB Europe 2016 - Welcome
 
Webinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
Webinar: Introducing the MongoDB Connector for BI 2.0 with TableauWebinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
Webinar: Introducing the MongoDB Connector for BI 2.0 with Tableau
 
Webinar: Transitioning from SQL to MongoDB
Webinar: Transitioning from SQL to MongoDBWebinar: Transitioning from SQL to MongoDB
Webinar: Transitioning from SQL to MongoDB
 
Webinar: 10-Step Guide to Creating a Single View of your Business
Webinar: 10-Step Guide to Creating a Single View of your BusinessWebinar: 10-Step Guide to Creating a Single View of your Business
Webinar: 10-Step Guide to Creating a Single View of your Business
 
mongoDb-certification
mongoDb-certificationmongoDb-certification
mongoDb-certification
 
MongoDB at Scale
MongoDB at ScaleMongoDB at Scale
MongoDB at Scale
 
Indexing and Performance Tuning
Indexing and Performance TuningIndexing and Performance Tuning
Indexing and Performance Tuning
 
Webinar: MongoDB Schema Design and Performance Implications
Webinar: MongoDB Schema Design and Performance ImplicationsWebinar: MongoDB Schema Design and Performance Implications
Webinar: MongoDB Schema Design and Performance Implications
 
MongoDB Europe 2016 - Welcome
MongoDB Europe 2016 - WelcomeMongoDB Europe 2016 - Welcome
MongoDB Europe 2016 - Welcome
 
MongoDB Launchpad 2016: What’s New in the 3.4 Server
MongoDB Launchpad 2016: What’s New in the 3.4 ServerMongoDB Launchpad 2016: What’s New in the 3.4 Server
MongoDB Launchpad 2016: What’s New in the 3.4 Server
 
Production deployment
Production deploymentProduction deployment
Production deployment
 

Similar to MongoDB Europe 2016 - Debugging MongoDB Performance

Diagnostics and Debugging
Diagnostics and DebuggingDiagnostics and Debugging
Diagnostics and Debugging
MongoDB
 
Presentation Brucon - Anubisnetworks and PTCoresec
Presentation Brucon - Anubisnetworks and PTCoresecPresentation Brucon - Anubisnetworks and PTCoresec
Presentation Brucon - Anubisnetworks and PTCoresec
Tiago Henriques
 
Intravert Server side processing for Cassandra
Intravert Server side processing for CassandraIntravert Server side processing for Cassandra
Intravert Server side processing for Cassandra
Edward Capriolo
 
MongoDB Performance Tuning
MongoDB Performance TuningMongoDB Performance Tuning
MongoDB Performance Tuning
MongoDB
 
Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?
Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?
Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?
SegFaultConf
 

Similar to MongoDB Europe 2016 - Debugging MongoDB Performance (20)

Diagnostics & Debugging webinar
Diagnostics & Debugging webinarDiagnostics & Debugging webinar
Diagnostics & Debugging webinar
 
Diagnostics and Debugging
Diagnostics and DebuggingDiagnostics and Debugging
Diagnostics and Debugging
 
It's 10pm: Do You Know Where Your Writes Are?
It's 10pm: Do You Know Where Your Writes Are?It's 10pm: Do You Know Where Your Writes Are?
It's 10pm: Do You Know Where Your Writes Are?
 
Mongo db dla administratora
Mongo db dla administratoraMongo db dla administratora
Mongo db dla administratora
 
Py conkr 20150829_docker-python
Py conkr 20150829_docker-pythonPy conkr 20150829_docker-python
Py conkr 20150829_docker-python
 
Py conkr 20150829_docker-python
Py conkr 20150829_docker-pythonPy conkr 20150829_docker-python
Py conkr 20150829_docker-python
 
Building and Deploying Application to Apache Mesos
Building and Deploying Application to Apache MesosBuilding and Deploying Application to Apache Mesos
Building and Deploying Application to Apache Mesos
 
10 Key MongoDB Performance Indicators
10 Key MongoDB Performance Indicators  10 Key MongoDB Performance Indicators
10 Key MongoDB Performance Indicators
 
Presentation Brucon - Anubisnetworks and PTCoresec
Presentation Brucon - Anubisnetworks and PTCoresecPresentation Brucon - Anubisnetworks and PTCoresec
Presentation Brucon - Anubisnetworks and PTCoresec
 
Why you should be using structured logs
Why you should be using structured logsWhy you should be using structured logs
Why you should be using structured logs
 
Intravert Server side processing for Cassandra
Intravert Server side processing for CassandraIntravert Server side processing for Cassandra
Intravert Server side processing for Cassandra
 
NYC* 2013 - "Advanced Data Processing: Beyond Queries and Slices"
NYC* 2013 - "Advanced Data Processing: Beyond Queries and Slices"NYC* 2013 - "Advanced Data Processing: Beyond Queries and Slices"
NYC* 2013 - "Advanced Data Processing: Beyond Queries and Slices"
 
Webinar: Architecting Secure and Compliant Applications with MongoDB
Webinar: Architecting Secure and Compliant Applications with MongoDBWebinar: Architecting Secure and Compliant Applications with MongoDB
Webinar: Architecting Secure and Compliant Applications with MongoDB
 
sf bay area dfir meetup (2016-04-30) - OsxCollector
sf bay area dfir meetup (2016-04-30) - OsxCollector   sf bay area dfir meetup (2016-04-30) - OsxCollector
sf bay area dfir meetup (2016-04-30) - OsxCollector
 
MongoDB Performance Tuning
MongoDB Performance TuningMongoDB Performance Tuning
MongoDB Performance Tuning
 
Null Bachaav - May 07 Attack Monitoring workshop.
Null Bachaav - May 07 Attack Monitoring workshop.Null Bachaav - May 07 Attack Monitoring workshop.
Null Bachaav - May 07 Attack Monitoring workshop.
 
Architecting Secure and Compliant Applications with MongoDB
Architecting Secure and Compliant Applications with MongoDB        Architecting Secure and Compliant Applications with MongoDB
Architecting Secure and Compliant Applications with MongoDB
 
Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?
Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?
Robert Pankowecki - Czy sprzedawcy SQLowych baz nas oszukali?
 
Nodejs性能分析优化和分布式设计探讨
Nodejs性能分析优化和分布式设计探讨Nodejs性能分析优化和分布式设计探讨
Nodejs性能分析优化和分布式设计探讨
 
MongoDB dla administratora
MongoDB dla administratora MongoDB dla administratora
MongoDB dla administratora
 

More from MongoDB

More from MongoDB (20)

MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB AtlasMongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
 
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
 
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
 
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDBMongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
 
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
 
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series DataMongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
 
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 MongoDB SoCal 2020: MongoDB Atlas Jump Start MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB SoCal 2020: MongoDB Atlas Jump Start
 
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
 
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
 
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
 
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
 
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your MindsetMongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
 
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas JumpstartMongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
 
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
 
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
 
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
 
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep DiveMongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
 
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & GolangMongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
 
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
 
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
 

Recently uploaded

怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制
怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制
怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制
vexqp
 
Gartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptxGartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptx
chadhar227
 
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
Health
 
一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样
一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样
一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样
wsppdmt
 
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
nirzagarg
 
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Klinik kandungan
 
Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...
gajnagarg
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
vexqp
 
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
q6pzkpark
 
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi ArabiaIn Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
ahmedjiabur940
 
Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...
nirzagarg
 
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
vexqp
 
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
gajnagarg
 

Recently uploaded (20)

怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制
怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制
怎样办理旧金山城市学院毕业证(CCSF毕业证书)成绩单学校原版复制
 
Gartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptxGartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptx
 
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
 
一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样
一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样
一比一原版(UCD毕业证书)加州大学戴维斯分校毕业证成绩单原件一模一样
 
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
 
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
 
Switzerland Constitution 2002.pdf.........
Switzerland Constitution 2002.pdf.........Switzerland Constitution 2002.pdf.........
Switzerland Constitution 2002.pdf.........
 
Capstone in Interprofessional Informatic // IMPACT OF COVID 19 ON EDUCATION
Capstone in Interprofessional Informatic  // IMPACT OF COVID 19 ON EDUCATIONCapstone in Interprofessional Informatic  // IMPACT OF COVID 19 ON EDUCATION
Capstone in Interprofessional Informatic // IMPACT OF COVID 19 ON EDUCATION
 
Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In dimapur [ 7014168258 ] Call Me For Genuine Models W...
 
Discover Why Less is More in B2B Research
Discover Why Less is More in B2B ResearchDiscover Why Less is More in B2B Research
Discover Why Less is More in B2B Research
 
7. Epi of Chronic respiratory diseases.ppt
7. Epi of Chronic respiratory diseases.ppt7. Epi of Chronic respiratory diseases.ppt
7. Epi of Chronic respiratory diseases.ppt
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
 
Harnessing the Power of GenAI for BI and Reporting.pptx
Harnessing the Power of GenAI for BI and Reporting.pptxHarnessing the Power of GenAI for BI and Reporting.pptx
Harnessing the Power of GenAI for BI and Reporting.pptx
 
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
 
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
 
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi ArabiaIn Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
 
Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Tumkur [ 7014168258 ] Call Me For Genuine Models We...
 
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
 
Dubai Call Girls Peeing O525547819 Call Girls Dubai
Dubai Call Girls Peeing O525547819 Call Girls DubaiDubai Call Girls Peeing O525547819 Call Girls Dubai
Dubai Call Girls Peeing O525547819 Call Girls Dubai
 
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
 

MongoDB Europe 2016 - Debugging MongoDB Performance

  • 1.
  • 2. Asya Kamsky, Lead Product Manager MongoDB Diagnostics and Debugging 3.4
  • 3. Asya Kamsky, Lead Product Manager MongoDB Diagnostics and Debugging 3.4
  • 4.
  • 5.
  • 6. “ I thought of my old teacher Joe Bell, ... of his eerie trick of spotting details. If he were a detective he would surely reduce this ... business to something nearer an exact science. —Arthur Conan Doyle
  • 7. The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.
  • 8. The image cannot be displayed. Your computer may not have enough memory to open the image, or the image may have been corrupted. Restart your computer, and then open the file again. If the red x still appears, you may have to delete the image and then insert it again.
  • 10. #MDBW16 Understanding The Patient Understand the system Knowledge Monitor trends over time Trends Record all metrics "at rest" Baseline
  • 11.
  • 12.
  • 13. Gathering Data “Data! Data! Data! I can't make bricks without clay.” -- Sherlock Holmes, The Adventure of the Copper Beeches
  • 14.
  • 15. “There is nothing like first-hand evidence.” -- Sherlock Holmes, A Study in Scarlet
  • 20. #MDBW16 Available Tools: Say "AH" > db.isMaster( ) > rs.conf( ) > rs.status( ) > sh.status( ) > db.version( ) > db.serverCmdLineOpts( )
  • 22. #MDBW16 > show dbs > show collections > db.getCollectionNames().forEach(function(c) { printjson(db.getCollection(c).getIndexes()); }); Available Tools: Say "AH"
  • 25. #MDBW16 Available Tools: OS % free % blockdev --report % dmesg % ulimit -a % ifconfig, ip <...>, iptables % iostat % netstat % top; htop % perf % iperf3
  • 26. #MDBW16 Available Tools: OS for MongoDB % mongostat % mongotop
  • 28. 2014-09-01T15:50:03.184-0004 [conn208] query data.activity query: { $query: { _updated_at: { $gt: new Date(1396459946346) }, _to: "_UserA" } }, $orderby: { _updated_at: -1 } } planSummary: IXSCAN { _to: 1, _created_at: -1 } ntoreturn:100 ntoskip:0 nscanned:19692 nscannedObjects:19692 numYields:170 locks(micros) r: 283957 nreturned:65 reslen:24939 342ms 2014-09-01T15:50:03.184-0004 [conn208] query data.activity query: { $query: { _updated_at: { $gt: new Date(1396459946346) }, _to: "_UserA" } }, $orderby: { _updated_at: -1 } } planSummary: IXSCAN { _to: 1, _created_at: -1 } ntoreturn:100 ntoskip:0 nscanned:19692 nscannedObjects:19692 numYields:170 locks(micros) r: 283957 nreturned:65 reslen:24939 342ms mongod logs
  • 30. 2015-05-26T23:33:32.774-0500 I COMMAND 2015-05-28T12:37:11.440-0500 I NETWORK 2015-05-28T12:38:35.839-0500 I QUERY 3.0 COMMAND,NETWORK,QUERY,REPL,ACCESS,INDEX,JOURNAL,SHARDING,WRITE,- mongod logs
  • 31. 2015-05-26T23:33:32.774-0500 I COMMAND [conn45] command admin.$cmd command: listDatabases { listDatabases: 1.0 } ntoskip:0 keyUpdates:0 writeConflicts:0 numYields:0 reslen:393 locks:{ Global: { acquireCount: { r: 12 } }, Database: { acquireCount: { r: 6 } } } 321ms 2015-05-28T12:37:11.440-0500 I NETWORK [initandlisten] connection accepted from 127.0.0.1:48625 #183 (21 connections now open) 2015-05-28T12:38:35.839-0500 I QUERY [conn183] getmore tableau.flights201406 query: { origin_city_market_id: 31703.0 } cursorid: 61957110347 ntoreturn:0 cursorExhausted:1 keyUpdates:0 writeConflicts:0 numYields:176 nreturned:22579 reslen:1332181 locks:{ Global: { acquireCount: { r: 354 } }, Database: { acquireCount: { r: 177 } }, Collection: { acquireCount: { r: 177 } } } 114ms 3.0 mongod logs
  • 33. 2016-06-23T10:34:41.559-0700 I COMMAND [conn26] command test.c command: find { find: "c", filter: { a: { $elemMatch: { v: { $gte: 3.0, $lt: 4.0 } } } } } planSummary: IXSCAN { a.v: 1.0 } keysExamined:2 docsExamined:1 fromMultiPlanner:1 cursorExhausted:1 keyUpdates:0 writeConflicts:0 numYields:1 nreturned:1 reslen:187 locks:{ Global: { acquireCount: { r: 4 } }, Database: { acquireCount: { r: 2 } }, Collection: { acquireCount: { r: 2 } } } protocol:op_command 110ms 3.2 mongod logs
  • 34. 2016-06-23T10:34:41.559-0700 I COMMAND [conn26] command test.c command: find { find: "c", filter: { a: { $elemMatch: { v: { $gte: 3.0, $lt: 4.0 } } } } } planSummary: IXSCAN { a.v: 1.0 } keysExamined:2 docsExamined:1 fromMultiPlanner:1 cursorExhausted:1 keyUpdates:0 writeConflicts:0 numYields:1 nreturned:1 reslen:187 locks:{ Global: { acquireCount: { r: 4 } }, Database: { acquireCount: { r: 2 } }, Collection: { acquireCount: { r: 2 } } } protocol:op_command 110ms 3.2 mongod logs
  • 36. 3.4 mongod logs 2016-06-01T15:30:04.373-0700 I COMMAND [conn99] command socialite.following command: aggregate { aggregate: "following", pipeline: [ { $match: { _f: "45705" } }, { $group: { _id: null, followees: { $addToSet: "$_t" } } }, { $lookup: { from: "following", localField: "followees", foreignField: "_f", as: "fofollowees" } }, { $project: { fofs: { $setUnion: [ "$followees", "$fofollowees._t" ] } } } ] } planSummary: IXSCAN { _f: 1, _t: 1 } keysExamined:1 docsExamined:0 numYields:11 reslen:316214 locks:{ Global: { acquireCount: { r: 3800 } }, Database: { acquireCount: { r: 1900 } }, Collection: { acquireCount: { r: 1900 } } } protocol:op_query 218ms
  • 37. 3.4 mongod logs 2016-06-25T23:38:27.346-0500 I WRITE [conn128] update ycsb.usertable query: { _id: "user7074965863272626663" } planSummary: IDHACK update: { $set: { field1: BinData(0, 2 } } keysExamined:1 docsExamined:1 nMatched:1 nModified:1 numYields:1 locks:{ Global: { acquireCount: { r: 3, w: 3 } }, Database: { acquireCount: { w: 3 } }, Collection: { acquireCount: { w: 2 } }, Metadata: { acquireCount: { w: 1 } }, oplog: { acquireCount: { w: 1 } } } 11ms
  • 39. > db.getLogComponents() { "verbosity" : 1, "accessControl" : { "verbosity" : -1}, "command" : { "verbosity" : -1}, "control" : { "verbosity" : -1}, "geo" : { "verbosity" : -1}, "index" : { "verbosity" : -1}, "network" : { "verbosity" : -1}, "query" : { "verbosity" : -1}, "replication" : { "verbosity" : -1}, "sharding" : { "verbosity" : -1}, "storage" : { "verbosity" : -1, "journal" : { "verbosity" : -1}}, "write" : { "verbosity" : -1} }
  • 40. > db.getLogComponents() { "verbosity" : 1, "accessControl" : { "verbosity" : -1}, "command" : { "verbosity" : -1}, "control" : { "verbosity" : -1}, "executor" : { "verbosity" : -1}, "geo" : { "verbosity" : -1}, "index" : { "verbosity" : -1}, "network" : { "verbosity" : -1}, "query" : { "verbosity" : -1}, "replication" : { "verbosity" : -1}, "sharding" : { "verbosity" : -1}, "storage" : { "verbosity" : -1, "journal" : { "verbosity" : -1}}, "write" : { "verbosity" : -1}, "ftdc" : { "verbosity" : -1} }
  • 41. > db.setLogLevel( logLevel, component ) > db.setLogLevel( 1, "sharding" ) > db.setLogLevel( 2, "query" )
  • 42. "It is of the highest importance ... to be able to recognize, out of a number of facts, which are incidental and which vital. " Sherlock Holmes, The Reigate Puzzle
  • 43.
  • 44.
  • 47. #MDBW16 mplotqueries $ mplotqueries --help usage: mplotqueries [OPTIONS] [logfile [logfile ...]] A script to plot various information from logfiles. ...
  • 48. #MDBW16 mplotqueries $ mplotqueries --help usage: mplotqueries [OPTIONS] [logfile [logfile ...]] A script to plot various information from logfiles. ... optional arguments: --type {nscanned/n,rsstate,connchurn,durline,histogram,range,scatter,event} type of plot (default=scatter with --yaxis duration)
  • 49. #MDBW16 mplotqueries $ mplotqueries --help usage: mplotqueries [OPTIONS] [logfile [logfile ...]] A script to plot various information from logfiles. ... optional arguments: --type {nscanned/n,rsstate,connchurn,durline,histogram,range,scatter,event} type of plot (default=scatter with --yaxis duration) --group GROUP specify value to group on. All basic plot types can group on 'namespace', 'operation', 'thread', 'pattern' ...
  • 50.
  • 51. "... what is out of the common is usually a guide rather than a hindrance." — Sherlock Holmes, A Study in Scarlet
  • 53. % mplotqueries firstmongo.log --type nscanned/n 2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72 reslen:32707 30129ms mplotqueries
  • 54. % mplotqueries firstmongo.log --type nscanned/n 2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72 reslen:32707 30129ms mplotqueries
  • 55. % mplotqueries firstmongo.log --type nscanned/n 2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72 reslen:32707 30129ms mplotqueries
  • 56. % mplotqueries firstmongo.log --type nscanned/n 2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72 reslen:32707 30129ms 2014-06-17T17:13:47.607 [conn1569990] query db2.coll query: { time: { $lt: "2014-06-17 17:14:05", $gte: "2014-06-17 17:05:05" }, status: 8 } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:2057564 nscannedObjects:2057564 keyUpdates:0 numYields:5008 locks(micros) r:11557172 nreturned:56 reslen:18745 13086ms mplotqueries
  • 57. % mplotqueries firstmongo.log --type nscanned/n 2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72 reslen:32707 30129ms 2014-06-17T17:13:47.607 [conn1569990] query db2.coll query: { time: { $lt: "2014-06-17 17:14:05", $gte: "2014-06-17 17:05:05" }, status: 8 } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:2057564 nscannedObjects:2057564 keyUpdates:0 numYields:5008 locks(micros) r:11557172 nreturned:56 reslen:18745 13086ms mplotqueries
  • 58. % mplotqueries firstmongo.log --type nscanned/n 2014-06-17T17:13:34.235 [conn1569841] query db1.coll query: { time: { $lt: "2014-06-17 17:13:31", $gte: "2014-06-17 17:04:31" } } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:5169727 nscannedObjects:5169727 keyUpdates:0 numYields:12492 locks(micros) r:37736571 nreturned:72 reslen:32707 30129ms 2014-06-17T17:13:47.607 [conn1569990] query db2.coll query: { time: { $lt: "2014-06-17 17:14:05", $gte: "2014-06-17 17:05:05" }, status: 8 } planSummary: COLLSCAN ntoreturn:0 ntoskip:0 nscanned:2057564 nscannedObjects:2057564 keyUpdates:0 numYields:5008 locks(micros) r:11557172 nreturned:56 reslen:18745 13086ms mplotqueries
  • 59.
  • 65. "Eliminate all other factors, and the one which remains must be the truth." Sherlock Holmes -The Sign of Four
  • 69. #MDBW16 mongostat insert query update delete getmore command % dirty % used flushes vsize res faults qr|qw ar|aw netIn netOut conn ReplSetName role ts
  • 81.
  • 82.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 96. #MDBW16 db.currentOp() > db.currentOp({secs_running:{$gt:10}}) { "desc" : "conn3482", "threadId" : "140512575297280", "connectionId" : 3482, "client_s" : "10.0.149.179:55295", "active" : true, "opid" : "SocialiteAtlas-shard-2:55547103", "secs_running" : 13, "microsecs_running" : NumberLong(13483812), "op" : "query", "ns" : "db1.coll1", "numYields" : 48815, "query" : { "field1" : 5,
  • 97. #MDBW16 db.currentOp() > db.currentOp({desc:/^conn/,secs_running:{$gt:0}}).inprog.forEach(function(op) { print(op.opid, op.op, op.ns, op.secs_running); }); SocialiteAtlas-shard-0:68479014 query socialite.content 3 SocialiteAtlas-shard-0:68479730 query socialite.content 2 SocialiteAtlas-shard-0:68480174 query socialite.content 1 SocialiteAtlas-shard-0:68479234 query socialite.content 2 SocialiteAtlas-shard-0:68480136 query socialite.content 1 SocialiteAtlas-shard-0:68479529 query socialite.content 2 SocialiteAtlas-shard-0:68480182 query socialite.content 1 SocialiteAtlas-shard-0:68480261 query socialite.content 1 > db.killOp ( opid )
  • 98.
  • 100. Asya Kamsky, Lead Product Manager MongoDB Diagnostics and Debugging 3.4
  • 101.
  • 102. Title Slide Option 1 Click here to add speaker name and title
  • 103. Title Slide Option 2 Click here to add speaker name and title
  • 104. This is divider slide option 2
  • 105. #MDBW16 Click to add title: keep it to 56 characters w/spaces This is a typical content slide with full width body. •  First level bullet list •  Second level bullet list •  Third level bullet list
  • 106. #MDBW16 Two content Click to add text. •  First level bullet list •  Second level bullet list •  Third level bullet list Click to add text. •  First level bullet list •  Second level bullet list •  Third level bullet list
  • 107. #MDBW16 Left content Click to add text. •  First level bullet list •  Second level bullet list
  • 108. #MDBW16 Left content Click to add text. •  First level bullet list •  Second level bullet list
  • 109. #MDBW16 Pie Chart 64% 25% 11% 1st Qtr 2nd Qtr 3rd Qtr 1st Quarter Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique . 2nd Quarter Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique . 3rd Quarter Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique .
  • 110. #MDBW16 Bar Graph 0 1 2 3 4 5 6 Category 1 Category 2 Category 3 Category 4 Chart Title Series 1 Series 2 Series 3
  • 111. #MDBW16 Column Header 1 Column Header 2 Column Header 3 Column Header 4 Column Header 5 Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Lorem ipsum dolor sit amet Table
  • 113. #MDBW16 Coding Example – Light Background // Retrieve var MongoClient = require('mongodb').MongoClient; // Connect to the db MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) { if(err) { return console.dir(err); } db.collection('test', function(err, collection) {}); db.collection('test', {w:1}, function(err, collection) {}); db.createCollection('test', function(err, collection) {}); db.createCollection('test', {w:1}, function(err, collection) {}); });
  • 114. #MDBW16 Coding Example – Dark Background // Retrieve var MongoClient = require('mongodb').MongoClient; // Connect to the db MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) { if(err) { return console.dir(err); } db.collection('test', function(err, collection) {}); db.collection('test', {w:1}, function(err, collection) {}); db.createCollection('test', function(err, collection) {}); db.createCollection('test', {w:1}, function(err, collection) {}); });
  • 115.
  • 116.
  • 117.
  • 118. #MDBW16 List slide – can also be used for agenda Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem Ipsum 01 Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem Ipsum 03Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem Ipsum 02 Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem Ipsum 05 Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem Ipsum 06Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem Ipsum 05
  • 119. #MDBW16 Columns and icons with copy (option 1) Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique. Linked Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique. Planning Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique. Writing Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique. Research
  • 120. #MDBW16 Columns and icons with copy (option 2) Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique . Linked Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique . Planning Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique . Writing Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique . Research
  • 121. #MDBW16 Timeline or progress 2013 Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. 2014 2015 Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique sit elit. 2016
  • 122. “ Quote sample. Lorem ipsum dolor sit amet, onsectetur adipiscing elit amet sodales. Praesent sodales odio sit amet odio tristique. Lorem ipsum dolor sit amet, onsectetur adipiscing elit. Praesent sodales odio sit amet odio tristique. Lorem ipsum dolor sit amet, onsectetur adipiscing elit.”