SlideShare une entreprise Scribd logo
1  sur  62
Technical Services Engineer, Palo Alto, CA @ MongoDB
Daniel Coupal
#MongoDB
Performance Tuning and
Monitoring Using MMS
2 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Agenda
1. What and who is MMS for?
2. Performance and monitoring examples
3. Setting it up and getting around
4. Wrapping up
5. Q&A
MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
1. What and who is MMS for?
4 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
What is MMS?
The MongoDB Management Service
• a free Cloud service for monitoring and
managing your MongoDB clusters
• or available to run On-Prem for
customers with the Standard or
Enterprise Subscriptions
• tool that makes MongoDB easier to use
5 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Who is MMS for?
• Developers
– Track bottlenecks
• Ops Team
– Monitor health of the clusters
– Backup databases
– Automate updates and add capacity
• MongoDB Technical Service Team
“For years, MongoDB has been planning to do monitoring right.“
“We want the Ops People to have the same enthusiasm as the Developers.”
6 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
What is in MMS?
A. Monitoring
1. Cloud: Sept 2011
2. On-Prem: July 2013
B. Backups
1. Cloud: April 2013
2. On-Prem: April 2014
C. Automation
1. Cloud: April 2014 (Beta)
7 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
What is in MMS monitoring?
A. Metric Collection and Reporting
B. Alerting
(Email, SMS, PagerDuty, HipChat, SNMP)
C. Event Tracking
D. Database Stats
E. Hardware Stats
F. Logs and Profile Data
8 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
A. Metric Collection and Reporting
9 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
B. Alerting
10 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
C. Event Tracking
11 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
D. Database Stats
12 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
E. Hardware Stats (CPU, disk)
13 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
F. Logs and Profile Data
MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
2. Performance tuning and monitoring
15 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
How to do performance tuning?
1. Assess the problem and establish acceptable behavior
2. Measure the current performance
3. Find the bottleneck*
4. Remove the bottleneck
5. Re-test to confirm
6. Repeat
* - (This is often the hard part)
(Adapted from http://en.wikipedia.org/wiki/Performance_tuning )
16 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Pro-Tip: know thyself
You have to recognize normal to know when it isn’t.
Source: http://www.flickr.com/photos/skippy/6853920/
17 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Some handy metrics to watch
• Memory usage
• Opcounters
• Lock %
• Queues
• Background flush average
• Replication
– Replication oplog window
– Replication lag
18 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Fun fact: oplog idempotency
• Operations in the oplog only affect the value once, so
they can be run multiple times safely.
• Examples
– If you increment n from 2 to 3, n = 3 is fine; n + 1 is not.
– Updating all documents that match a query is not, list of
documents to update is.
• Frequent, large updates means a big oplog to sync.
• Updates that change a set mean writing the entire
new version of the set to the oplog.
19 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 1: replication lag
Scenario:
Customer reports 150,000s of replication lag.
Equals to almost 2 days of lag!
20 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 1: replication lag
Some common causes of replication lag:
• Secondaries underspec’d vs primaries
• Access patterns between primary and
secondaries
• Insufficient bandwidth
• Foreground index builds on secondaries
“…when you have eliminated the impossible, whatever remains,
however improbable, must be the truth…” -- Sherlock Holmes
Sir Arthur Conan Doyle, The Sign of the Four
21 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 1: replication lag
Example:
• ~1500 ops per minute (opcounters)
• 0.1 MB per object (average object size, local db)
• ~1500 ops/min / 60 seconds * 0.1 MB/op * 8b/B
=~ 20 mbps required bandwidth
 Huge updates (oplog is idempotent) translated to 30
mbps, while they only had 10 mbps
22 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Lesson: remember to use alerts!
Don’t wait until your secondaries fall off
your oplog!
23 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Scenario:
• User-facing web application with social functionality.
• Customer was seeing significant performance
degradation after adding and removing an index from
their replicaset.
• Their replicaset had 2 visible data-bearing nodes,
each on real hardware, with dedicated 15K RPM disks
and a significant amount of RAM.
• Why were things slow?
24 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Opcounters: queries rose a bit, however writes
were flat…
25 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Background flush average: went up
considerably!
26 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Queues: also went up considerably!
27 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Journal stats: went up much higher than
the ops…
28 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Connections: also went up…
29 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Background flush average: consistent
until then
30 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Opcounters: interesting… around July 9th
31 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Page faults: something’s going on!
32 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Local DB average object size: growing!
33 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Now what?
Time to analyze the logs
What query or queries were going crazy?
And what sort of query would grow in size
without growing significantly in volume?
Remember:
Growing disk latency (caused by page faults?)
And journal/oplog entries growing even
though writes (inserts/updates) were flat.
34 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Log analysis
The best tools for analyzing MongoDB
logs are included in mtools*:
• mlogfilter
filter logs for slow queries, collection scans, …
• mplotqueries
graph query response times and volumes
* https://github.com/rueckstiess/mtools
35 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Log analysis (example syntax)
Show me queries that took more than
1000 ms from 6 am to 6 pm:
mlogfilter mongodb.log --from 06:00 --to
18:00 --slow 1000 > mongodb-filtered.log
Now, graph those queries:
mplotqueries --logscale mongodb-filtered.log
36 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
37 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Filter more!
--operation
Logarithmic!
--logscale
38 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Sample query
Wed Jul 17 14:16:44 [conn60560] update x.y query: { e:
”[id1]" } update: { $addToSet: { fr: ”[id2]" } }
nscanned:1 nupdated:1 keyUpdates:1 locks(micros) w:889
6504ms
6.5 seconds to add a single value to a set!
39 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
http://docs.mongodb.org/manual/reference/operator/addToSet/
The $addToSet operator adds a value to an array only if
the value is not in the array already. If the value is in the
array, $addToSet returns without modifying the array.
Consider the following example:
db.collection.update({field:value}, {$addToSet: {field:value1}});
Here, $addToSet appends value1 to the array stored in
field, only if value1 is not already a member of this array.
40 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
https://jira.mongodb.org/browse/SERVER-8192
“IndexSpec::getKeys() finds the set of index keys for a given
document and index key spec. It's used when inserting / updating /
deleting a document to update the index entries, and also for
performing in memory sorts, deduping $or clauses and for other
purposes.
Right now extracting 10k elements from a nested object field within
an array takes on the order of seconds on a decently fast machine.
We could see how much we can optimize the implementation.”
41 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
What else?!
• Wed Jul 17 14:11:59 [conn56541] update x.y query: {
e: ”[id1]" } update: { $addToSet: { fr: ”[id2]" } }
nscanned:1 nmoved:1 nupdated:1 keyUpdates:0
locks(micros) w:85145 11768ms
• Almost 12 seconds!
This time, there’s “nmoved:1”, too.
This means a document was moved on
disk, it outgrew the space allocated for it.
42 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Wait, there’s more!
• Wed Jul 17 13:40:14 [conn28600] query x.y [snip]
ntoreturn:16 ntoskip:0 nscanned:16779 scanAndOrder:1
keyUpdates:0 numYields: 906 locks(micros) r:46877422
nreturned:16 reslen:6948 38172ms
• 38 seconds! Scanned 17k documents,
returned 16.
43 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
What next?
Short term fix: disable the new feature for
the heaviest users! After that:
• rework the code to avoid $addToSet
• add indexes for queries scanning collections
• use powerOf2Sizes
(http://docs.mongodb.org/manual/reference/command/collMod/)
to reduce fragmentation and document moves
44 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Example 2: slow performance
Did it work?
(Yes.)
(So far. ;) )
45 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Monitoring: watch for warnings
MMS warns you if your systems
a) are running outdated versions
b) have startup warnings
c) if a mongod is publicly visible
Don’t ignore these warnings!
MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
3. Setting it up and getting around
47 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Setting up monitoring for the Cloud
http://mms.mongodb.com/help/monitoring/tutorial/
• Setup an account (Free)
• Install the agent
– Download the binary
– Set the API key in the configuration file
• Add your hosts
– Add a seed host, MMS will discover the cluster
• Optional: hardware stats through Munin-node
• Optional: enable logging and profiling
48 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Setting up monitoring “On-Prem”
• Available (included) to Customers with
– Enterprise subscription
– OR Standard subscription
• One host to run the server for up to 400 hosts
• One RPM/Deb package to install
• Installing the backup requires more planning
and more resources (hosts, disks, …)
– The alternative is use MMS Backups in the Cloud,
we removed the complexity for you.
49 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
MMS Monitoring Architecture
50 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
List of monitored hosts
51 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Notes
• Agent written in Go
• Failover: run multiple agents (1 primary)
• Hosts: use CNAMEs, especially on AWS!
• You can use a group per environment (each needs an
agent)
• Connections are over SSL
• On-Prem solution for Enterprise or Standard
customers that don’t want to use the hosted service
• Makes it easier for the technical services to help you!
MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
4. Wrapping up
53 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
The Technical Services Team
• We are here to make you successful,
open tickets
– We support 1000s of customers
– Another customer may had the same issue
as you
• Throw any problems to the Technical
Services Team
54 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
What’s next for MMS?
• Continuous updates
– Cloud: ~every 3 weeks
– On-Prem: ~every 3 months
• Automation service
• A lot of more information at:
MongoDB World 2014 @
NYC on June 23-25
55 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Summary
• MMS is a great, free service
• Setup is easy
• Metrics and graphs are awesome
• Preventing failures even more awesome
• Using MMS makes it easier for the
Technical Services Team to help you
• Monitor your DBs like a Pro, use MMS
MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
5. Questions?
MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Appendix
58 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Other MMS References
• Tons of webinars and other presentations
http://www.mongodb.com/presentations
• Five MMS Monitoring Alerts to Keep Your MongoDB Deployment on Track
http://www.mongodb.com/blog/post/five-mms-monitoring-alerts-keep-your-
mongodb-deployment-track
• Digging into the meaning of some metrics
– Lock % : http://blog.mms.mongodb.com/post/78650784046/learn-about-lock-percentage-concurrency-
in-mongodb
– Replication Oplog Window : http://blog.mms.mongodb.com/post/77279440964/replica-set-health-is-
more-than-just-replication-lag
• How to fix some warnings reported by MMS
– http://docs.mongodb.org/manual/administration/production-notes/
(includes readahead settings)
59 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Examining memory and disk
Memory: resident vs virtual vs non-mapped
60 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Examining memory and disk
Page faults and Record Stats
61 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Examining memory and disk
Background flush and Disk IO
(Check out http://www.wmarrow.com/strcalc/ )
MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal
Thank you for using

Contenu connexe

Tendances

How to monitor MongoDB
How to monitor MongoDBHow to monitor MongoDB
How to monitor MongoDBServer Density
 
Webinar: Performance Tuning + Optimization
Webinar: Performance Tuning + OptimizationWebinar: Performance Tuning + Optimization
Webinar: Performance Tuning + OptimizationMongoDB
 
Optimizing MongoDB: Lessons Learned at Localytics
Optimizing MongoDB: Lessons Learned at LocalyticsOptimizing MongoDB: Lessons Learned at Localytics
Optimizing MongoDB: Lessons Learned at Localyticsandrew311
 
Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...Ontico
 
Postgres connections at scale
Postgres connections at scalePostgres connections at scale
Postgres connections at scaleMydbops
 
Back to Basics Webinar 6: Production Deployment
Back to Basics Webinar 6: Production DeploymentBack to Basics Webinar 6: Production Deployment
Back to Basics Webinar 6: Production DeploymentMongoDB
 
Breaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDB
Breaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDBBreaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDB
Breaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDBMongoDB
 
Development to Production with Sharded MongoDB Clusters
Development to Production with Sharded MongoDB ClustersDevelopment to Production with Sharded MongoDB Clusters
Development to Production with Sharded MongoDB ClustersSeveralnines
 
Back to Basics Spanish Webinar 3 - Introducción a los replica sets
Back to Basics Spanish Webinar 3 - Introducción a los replica setsBack to Basics Spanish Webinar 3 - Introducción a los replica sets
Back to Basics Spanish Webinar 3 - Introducción a los replica setsMongoDB
 
Back to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to ShardingBack to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to ShardingMongoDB
 
Evolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops Team
Evolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops TeamEvolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops Team
Evolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops TeamMydbops
 
MongoDB - External Authentication
MongoDB - External AuthenticationMongoDB - External Authentication
MongoDB - External AuthenticationJason Terpko
 
MongoDB Command Line Tools
MongoDB Command Line ToolsMongoDB Command Line Tools
MongoDB Command Line ToolsRainforest QA
 
Back to Basics Spanish 4 Introduction to sharding
Back to Basics Spanish 4 Introduction to shardingBack to Basics Spanish 4 Introduction to sharding
Back to Basics Spanish 4 Introduction to shardingMongoDB
 
MongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo SeattleMongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo SeattleMongoDB
 
MongoDB Basic Concepts
MongoDB Basic ConceptsMongoDB Basic Concepts
MongoDB Basic ConceptsMongoDB
 
Setting up mongodb sharded cluster in 30 minutes
Setting up mongodb sharded cluster in 30 minutesSetting up mongodb sharded cluster in 30 minutes
Setting up mongodb sharded cluster in 30 minutesSudheer Kondla
 
MongoDB Best Practices in AWS
MongoDB Best Practices in AWS MongoDB Best Practices in AWS
MongoDB Best Practices in AWS Chris Harris
 

Tendances (20)

How to monitor MongoDB
How to monitor MongoDBHow to monitor MongoDB
How to monitor MongoDB
 
Webinar: Performance Tuning + Optimization
Webinar: Performance Tuning + OptimizationWebinar: Performance Tuning + Optimization
Webinar: Performance Tuning + Optimization
 
Optimizing MongoDB: Lessons Learned at Localytics
Optimizing MongoDB: Lessons Learned at LocalyticsOptimizing MongoDB: Lessons Learned at Localytics
Optimizing MongoDB: Lessons Learned at Localytics
 
Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...Understanding and tuning WiredTiger, the new high performance database engine...
Understanding and tuning WiredTiger, the new high performance database engine...
 
Postgres connections at scale
Postgres connections at scalePostgres connections at scale
Postgres connections at scale
 
Back to Basics Webinar 6: Production Deployment
Back to Basics Webinar 6: Production DeploymentBack to Basics Webinar 6: Production Deployment
Back to Basics Webinar 6: Production Deployment
 
Mongodb replication
Mongodb replicationMongodb replication
Mongodb replication
 
Breaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDB
Breaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDBBreaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDB
Breaking the Oracle Tie; High Performance OLTP and Analytics Using MongoDB
 
Development to Production with Sharded MongoDB Clusters
Development to Production with Sharded MongoDB ClustersDevelopment to Production with Sharded MongoDB Clusters
Development to Production with Sharded MongoDB Clusters
 
Back to Basics Spanish Webinar 3 - Introducción a los replica sets
Back to Basics Spanish Webinar 3 - Introducción a los replica setsBack to Basics Spanish Webinar 3 - Introducción a los replica sets
Back to Basics Spanish Webinar 3 - Introducción a los replica sets
 
Mongodb
MongodbMongodb
Mongodb
 
Back to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to ShardingBack to Basics 2017: Introduction to Sharding
Back to Basics 2017: Introduction to Sharding
 
Evolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops Team
Evolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops TeamEvolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops Team
Evolution of MonogDB Sharding and Its Best Practices - Ranjith A - Mydbops Team
 
MongoDB - External Authentication
MongoDB - External AuthenticationMongoDB - External Authentication
MongoDB - External Authentication
 
MongoDB Command Line Tools
MongoDB Command Line ToolsMongoDB Command Line Tools
MongoDB Command Line Tools
 
Back to Basics Spanish 4 Introduction to sharding
Back to Basics Spanish 4 Introduction to shardingBack to Basics Spanish 4 Introduction to sharding
Back to Basics Spanish 4 Introduction to sharding
 
MongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo SeattleMongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo Seattle
 
MongoDB Basic Concepts
MongoDB Basic ConceptsMongoDB Basic Concepts
MongoDB Basic Concepts
 
Setting up mongodb sharded cluster in 30 minutes
Setting up mongodb sharded cluster in 30 minutesSetting up mongodb sharded cluster in 30 minutes
Setting up mongodb sharded cluster in 30 minutes
 
MongoDB Best Practices in AWS
MongoDB Best Practices in AWS MongoDB Best Practices in AWS
MongoDB Best Practices in AWS
 

Similaire à MongoDB Performance Tuning and Monitoring

MongoDB performance tuning and monitoring with MMS
MongoDB performance tuning and monitoring with MMSMongoDB performance tuning and monitoring with MMS
MongoDB performance tuning and monitoring with MMSNicholas Tang
 
Silicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDBSilicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDBDaniel Coupal
 
MongoDB and the MEAN Stack
MongoDB and the MEAN StackMongoDB and the MEAN Stack
MongoDB and the MEAN StackMongoDB
 
MongoDB Tokyo - Monitoring and Queueing
MongoDB Tokyo - Monitoring and QueueingMongoDB Tokyo - Monitoring and Queueing
MongoDB Tokyo - Monitoring and QueueingBoxed Ice
 
5 Pitfalls to Avoid with MongoDB
5 Pitfalls to Avoid with MongoDB5 Pitfalls to Avoid with MongoDB
5 Pitfalls to Avoid with MongoDBTim Callaghan
 
NoSQL and MongoDB Introdction
NoSQL and MongoDB IntrodctionNoSQL and MongoDB Introdction
NoSQL and MongoDB IntrodctionBrian Enochson
 
Use Case: Apollo Group at Oracle Open World
Use Case: Apollo Group at Oracle Open WorldUse Case: Apollo Group at Oracle Open World
Use Case: Apollo Group at Oracle Open WorldMongoDB
 
Is It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB PerformanceIs It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB PerformanceTim Callaghan
 
Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2Dana Elisabeth Groce
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara AnjargolianHakka Labs
 
Rapid Development with Schemaless Data Models
Rapid Development with Schemaless Data ModelsRapid Development with Schemaless Data Models
Rapid Development with Schemaless Data ModelsMongoDB
 
Mdb dn 2016_07_elastic_search
Mdb dn 2016_07_elastic_searchMdb dn 2016_07_elastic_search
Mdb dn 2016_07_elastic_searchDaniel M. Farrell
 
Webinar: MongoDB and Drupal 8 - Life without SQL
Webinar: MongoDB and Drupal 8 - Life without SQLWebinar: MongoDB and Drupal 8 - Life without SQL
Webinar: MongoDB and Drupal 8 - Life without SQLMongoDB
 
MongoDB in Denver: How Global Healthcare Exchange is Using MongoDB
MongoDB in Denver: How Global Healthcare Exchange is Using MongoDBMongoDB in Denver: How Global Healthcare Exchange is Using MongoDB
MongoDB in Denver: How Global Healthcare Exchange is Using MongoDBMongoDB
 
Silicon Valley Code Camp 2015 - Advanced MongoDB - The Sequel
Silicon Valley Code Camp 2015 - Advanced MongoDB - The SequelSilicon Valley Code Camp 2015 - Advanced MongoDB - The Sequel
Silicon Valley Code Camp 2015 - Advanced MongoDB - The SequelDaniel Coupal
 
MongoDB San Francisco 2013: MongoDB for Collaborative Science presented by D...
MongoDB San Francisco 2013:  MongoDB for Collaborative Science presented by D...MongoDB San Francisco 2013:  MongoDB for Collaborative Science presented by D...
MongoDB San Francisco 2013: MongoDB for Collaborative Science presented by D...MongoDB
 
Walking the Walk: Developing the MongoDB Backup Service with MongoDB
Walking the Walk: Developing the MongoDB Backup Service with MongoDBWalking the Walk: Developing the MongoDB Backup Service with MongoDB
Walking the Walk: Developing the MongoDB Backup Service with MongoDBMongoDB
 
Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...
Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...
Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...Mydbops
 

Similaire à MongoDB Performance Tuning and Monitoring (20)

MongoDB performance tuning and monitoring with MMS
MongoDB performance tuning and monitoring with MMSMongoDB performance tuning and monitoring with MMS
MongoDB performance tuning and monitoring with MMS
 
Silicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDBSilicon Valley Code Camp 2014 - Advanced MongoDB
Silicon Valley Code Camp 2014 - Advanced MongoDB
 
MongoDB and the MEAN Stack
MongoDB and the MEAN StackMongoDB and the MEAN Stack
MongoDB and the MEAN Stack
 
disertation
disertationdisertation
disertation
 
MongoDB Tokyo - Monitoring and Queueing
MongoDB Tokyo - Monitoring and QueueingMongoDB Tokyo - Monitoring and Queueing
MongoDB Tokyo - Monitoring and Queueing
 
5 Pitfalls to Avoid with MongoDB
5 Pitfalls to Avoid with MongoDB5 Pitfalls to Avoid with MongoDB
5 Pitfalls to Avoid with MongoDB
 
NoSQL and MongoDB Introdction
NoSQL and MongoDB IntrodctionNoSQL and MongoDB Introdction
NoSQL and MongoDB Introdction
 
Use Case: Apollo Group at Oracle Open World
Use Case: Apollo Group at Oracle Open WorldUse Case: Apollo Group at Oracle Open World
Use Case: Apollo Group at Oracle Open World
 
Is It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB PerformanceIs It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB Performance
 
Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2Webinar: Best Practices for Upgrading to MongoDB 3.2
Webinar: Best Practices for Upgrading to MongoDB 3.2
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara Anjargolian
 
Rapid Development with Schemaless Data Models
Rapid Development with Schemaless Data ModelsRapid Development with Schemaless Data Models
Rapid Development with Schemaless Data Models
 
Mdb dn 2016_07_elastic_search
Mdb dn 2016_07_elastic_searchMdb dn 2016_07_elastic_search
Mdb dn 2016_07_elastic_search
 
Webinar: MongoDB and Drupal 8 - Life without SQL
Webinar: MongoDB and Drupal 8 - Life without SQLWebinar: MongoDB and Drupal 8 - Life without SQL
Webinar: MongoDB and Drupal 8 - Life without SQL
 
MongoDB in Denver: How Global Healthcare Exchange is Using MongoDB
MongoDB in Denver: How Global Healthcare Exchange is Using MongoDBMongoDB in Denver: How Global Healthcare Exchange is Using MongoDB
MongoDB in Denver: How Global Healthcare Exchange is Using MongoDB
 
Silicon Valley Code Camp 2015 - Advanced MongoDB - The Sequel
Silicon Valley Code Camp 2015 - Advanced MongoDB - The SequelSilicon Valley Code Camp 2015 - Advanced MongoDB - The Sequel
Silicon Valley Code Camp 2015 - Advanced MongoDB - The Sequel
 
Mongo db report
Mongo db reportMongo db report
Mongo db report
 
MongoDB San Francisco 2013: MongoDB for Collaborative Science presented by D...
MongoDB San Francisco 2013:  MongoDB for Collaborative Science presented by D...MongoDB San Francisco 2013:  MongoDB for Collaborative Science presented by D...
MongoDB San Francisco 2013: MongoDB for Collaborative Science presented by D...
 
Walking the Walk: Developing the MongoDB Backup Service with MongoDB
Walking the Walk: Developing the MongoDB Backup Service with MongoDBWalking the Walk: Developing the MongoDB Backup Service with MongoDB
Walking the Walk: Developing the MongoDB Backup Service with MongoDB
 
Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...
Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...
Mastering MongoDB Atlas: Essentials of Diagnostics and Debugging in the Cloud...
 

Plus de MongoDB

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 AtlasMongoDB
 
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
 
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
 
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 MongoDBMongoDB
 
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
 
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 DataMongoDB
 
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 StartMongoDB
 
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
 
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.2MongoDB
 
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
 
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
 
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 MindsetMongoDB
 
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 JumpstartMongoDB
 
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
 
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
 
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
 
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 DiveMongoDB
 
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 & GolangMongoDB
 
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
 
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...MongoDB
 

Plus de 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...
 

Dernier

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Dernier (20)

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

MongoDB Performance Tuning and Monitoring

  • 1. Technical Services Engineer, Palo Alto, CA @ MongoDB Daniel Coupal #MongoDB Performance Tuning and Monitoring Using MMS
  • 2. 2 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Agenda 1. What and who is MMS for? 2. Performance and monitoring examples 3. Setting it up and getting around 4. Wrapping up 5. Q&A
  • 3. MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal 1. What and who is MMS for?
  • 4. 4 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal What is MMS? The MongoDB Management Service • a free Cloud service for monitoring and managing your MongoDB clusters • or available to run On-Prem for customers with the Standard or Enterprise Subscriptions • tool that makes MongoDB easier to use
  • 5. 5 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Who is MMS for? • Developers – Track bottlenecks • Ops Team – Monitor health of the clusters – Backup databases – Automate updates and add capacity • MongoDB Technical Service Team “For years, MongoDB has been planning to do monitoring right.“ “We want the Ops People to have the same enthusiasm as the Developers.”
  • 6. 6 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal What is in MMS? A. Monitoring 1. Cloud: Sept 2011 2. On-Prem: July 2013 B. Backups 1. Cloud: April 2013 2. On-Prem: April 2014 C. Automation 1. Cloud: April 2014 (Beta)
  • 7. 7 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal What is in MMS monitoring? A. Metric Collection and Reporting B. Alerting (Email, SMS, PagerDuty, HipChat, SNMP) C. Event Tracking D. Database Stats E. Hardware Stats F. Logs and Profile Data
  • 8. 8 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal A. Metric Collection and Reporting
  • 9. 9 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal B. Alerting
  • 10. 10 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal C. Event Tracking
  • 11. 11 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal D. Database Stats
  • 12. 12 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal E. Hardware Stats (CPU, disk)
  • 13. 13 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal F. Logs and Profile Data
  • 14. MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal 2. Performance tuning and monitoring
  • 15. 15 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal How to do performance tuning? 1. Assess the problem and establish acceptable behavior 2. Measure the current performance 3. Find the bottleneck* 4. Remove the bottleneck 5. Re-test to confirm 6. Repeat * - (This is often the hard part) (Adapted from http://en.wikipedia.org/wiki/Performance_tuning )
  • 16. 16 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Pro-Tip: know thyself You have to recognize normal to know when it isn’t. Source: http://www.flickr.com/photos/skippy/6853920/
  • 17. 17 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Some handy metrics to watch • Memory usage • Opcounters • Lock % • Queues • Background flush average • Replication – Replication oplog window – Replication lag
  • 18. 18 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Fun fact: oplog idempotency • Operations in the oplog only affect the value once, so they can be run multiple times safely. • Examples – If you increment n from 2 to 3, n = 3 is fine; n + 1 is not. – Updating all documents that match a query is not, list of documents to update is. • Frequent, large updates means a big oplog to sync. • Updates that change a set mean writing the entire new version of the set to the oplog.
  • 19. 19 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 1: replication lag Scenario: Customer reports 150,000s of replication lag. Equals to almost 2 days of lag!
  • 20. 20 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 1: replication lag Some common causes of replication lag: • Secondaries underspec’d vs primaries • Access patterns between primary and secondaries • Insufficient bandwidth • Foreground index builds on secondaries “…when you have eliminated the impossible, whatever remains, however improbable, must be the truth…” -- Sherlock Holmes Sir Arthur Conan Doyle, The Sign of the Four
  • 21. 21 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 1: replication lag Example: • ~1500 ops per minute (opcounters) • 0.1 MB per object (average object size, local db) • ~1500 ops/min / 60 seconds * 0.1 MB/op * 8b/B =~ 20 mbps required bandwidth  Huge updates (oplog is idempotent) translated to 30 mbps, while they only had 10 mbps
  • 22. 22 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Lesson: remember to use alerts! Don’t wait until your secondaries fall off your oplog!
  • 23. 23 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Scenario: • User-facing web application with social functionality. • Customer was seeing significant performance degradation after adding and removing an index from their replicaset. • Their replicaset had 2 visible data-bearing nodes, each on real hardware, with dedicated 15K RPM disks and a significant amount of RAM. • Why were things slow?
  • 24. 24 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Opcounters: queries rose a bit, however writes were flat…
  • 25. 25 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Background flush average: went up considerably!
  • 26. 26 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Queues: also went up considerably!
  • 27. 27 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Journal stats: went up much higher than the ops…
  • 28. 28 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Connections: also went up…
  • 29. 29 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Background flush average: consistent until then
  • 30. 30 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Opcounters: interesting… around July 9th
  • 31. 31 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Page faults: something’s going on!
  • 32. 32 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Local DB average object size: growing!
  • 33. 33 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Now what? Time to analyze the logs What query or queries were going crazy? And what sort of query would grow in size without growing significantly in volume? Remember: Growing disk latency (caused by page faults?) And journal/oplog entries growing even though writes (inserts/updates) were flat.
  • 34. 34 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Log analysis The best tools for analyzing MongoDB logs are included in mtools*: • mlogfilter filter logs for slow queries, collection scans, … • mplotqueries graph query response times and volumes * https://github.com/rueckstiess/mtools
  • 35. 35 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Log analysis (example syntax) Show me queries that took more than 1000 ms from 6 am to 6 pm: mlogfilter mongodb.log --from 06:00 --to 18:00 --slow 1000 > mongodb-filtered.log Now, graph those queries: mplotqueries --logscale mongodb-filtered.log
  • 36. 36 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance
  • 37. 37 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Filter more! --operation Logarithmic! --logscale
  • 38. 38 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Sample query Wed Jul 17 14:16:44 [conn60560] update x.y query: { e: ”[id1]" } update: { $addToSet: { fr: ”[id2]" } } nscanned:1 nupdated:1 keyUpdates:1 locks(micros) w:889 6504ms 6.5 seconds to add a single value to a set!
  • 39. 39 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance http://docs.mongodb.org/manual/reference/operator/addToSet/ The $addToSet operator adds a value to an array only if the value is not in the array already. If the value is in the array, $addToSet returns without modifying the array. Consider the following example: db.collection.update({field:value}, {$addToSet: {field:value1}}); Here, $addToSet appends value1 to the array stored in field, only if value1 is not already a member of this array.
  • 40. 40 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance https://jira.mongodb.org/browse/SERVER-8192 “IndexSpec::getKeys() finds the set of index keys for a given document and index key spec. It's used when inserting / updating / deleting a document to update the index entries, and also for performing in memory sorts, deduping $or clauses and for other purposes. Right now extracting 10k elements from a nested object field within an array takes on the order of seconds on a decently fast machine. We could see how much we can optimize the implementation.”
  • 41. 41 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance What else?! • Wed Jul 17 14:11:59 [conn56541] update x.y query: { e: ”[id1]" } update: { $addToSet: { fr: ”[id2]" } } nscanned:1 nmoved:1 nupdated:1 keyUpdates:0 locks(micros) w:85145 11768ms • Almost 12 seconds! This time, there’s “nmoved:1”, too. This means a document was moved on disk, it outgrew the space allocated for it.
  • 42. 42 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Wait, there’s more! • Wed Jul 17 13:40:14 [conn28600] query x.y [snip] ntoreturn:16 ntoskip:0 nscanned:16779 scanAndOrder:1 keyUpdates:0 numYields: 906 locks(micros) r:46877422 nreturned:16 reslen:6948 38172ms • 38 seconds! Scanned 17k documents, returned 16.
  • 43. 43 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance What next? Short term fix: disable the new feature for the heaviest users! After that: • rework the code to avoid $addToSet • add indexes for queries scanning collections • use powerOf2Sizes (http://docs.mongodb.org/manual/reference/command/collMod/) to reduce fragmentation and document moves
  • 44. 44 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Example 2: slow performance Did it work? (Yes.) (So far. ;) )
  • 45. 45 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Monitoring: watch for warnings MMS warns you if your systems a) are running outdated versions b) have startup warnings c) if a mongod is publicly visible Don’t ignore these warnings!
  • 46. MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal 3. Setting it up and getting around
  • 47. 47 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Setting up monitoring for the Cloud http://mms.mongodb.com/help/monitoring/tutorial/ • Setup an account (Free) • Install the agent – Download the binary – Set the API key in the configuration file • Add your hosts – Add a seed host, MMS will discover the cluster • Optional: hardware stats through Munin-node • Optional: enable logging and profiling
  • 48. 48 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Setting up monitoring “On-Prem” • Available (included) to Customers with – Enterprise subscription – OR Standard subscription • One host to run the server for up to 400 hosts • One RPM/Deb package to install • Installing the backup requires more planning and more resources (hosts, disks, …) – The alternative is use MMS Backups in the Cloud, we removed the complexity for you.
  • 49. 49 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal MMS Monitoring Architecture
  • 50. 50 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal List of monitored hosts
  • 51. 51 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Notes • Agent written in Go • Failover: run multiple agents (1 primary) • Hosts: use CNAMEs, especially on AWS! • You can use a group per environment (each needs an agent) • Connections are over SSL • On-Prem solution for Enterprise or Standard customers that don’t want to use the hosted service • Makes it easier for the technical services to help you!
  • 52. MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal 4. Wrapping up
  • 53. 53 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal The Technical Services Team • We are here to make you successful, open tickets – We support 1000s of customers – Another customer may had the same issue as you • Throw any problems to the Technical Services Team
  • 54. 54 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal What’s next for MMS? • Continuous updates – Cloud: ~every 3 weeks – On-Prem: ~every 3 months • Automation service • A lot of more information at: MongoDB World 2014 @ NYC on June 23-25
  • 55. 55 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Summary • MMS is a great, free service • Setup is easy • Metrics and graphs are awesome • Preventing failures even more awesome • Using MMS makes it easier for the Technical Services Team to help you • Monitor your DBs like a Pro, use MMS
  • 56. MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal 5. Questions?
  • 57. MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Appendix
  • 58. 58 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Other MMS References • Tons of webinars and other presentations http://www.mongodb.com/presentations • Five MMS Monitoring Alerts to Keep Your MongoDB Deployment on Track http://www.mongodb.com/blog/post/five-mms-monitoring-alerts-keep-your- mongodb-deployment-track • Digging into the meaning of some metrics – Lock % : http://blog.mms.mongodb.com/post/78650784046/learn-about-lock-percentage-concurrency- in-mongodb – Replication Oplog Window : http://blog.mms.mongodb.com/post/77279440964/replica-set-health-is- more-than-just-replication-lag • How to fix some warnings reported by MMS – http://docs.mongodb.org/manual/administration/production-notes/ (includes readahead settings)
  • 59. 59 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Examining memory and disk Memory: resident vs virtual vs non-mapped
  • 60. 60 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Examining memory and disk Page faults and Record Stats
  • 61. 61 MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Examining memory and disk Background flush and Disk IO (Check out http://www.wmarrow.com/strcalc/ )
  • 62. MongoDB Performance Tuning and Monitoring Using MMS, Daniel Coupal Thank you for using

Notes de l'éditeur

  1. 50:00 elapsed minutes