David is the Practice Manager for MongoDB at Percona. Prior to that he was one of the early memeber for ObjectRocket the leader in DBaaS for MongoDB specializing in performance. Prior to this he was a Database Architect as Electronic Arts , the game producer and help various systems, networking and development roles. His work includes things like sharding, distributed systems, tool building, very large-scale issues, and high-performance MongoDB architecture and design. As a speaker, he prefers to focus on solutions in the real world to issues, to this point he tries to regularly publish code to help everyone use his solutions or have ideas to inspire their own.Additionally, he is a Mongo Master Alumni and core code contributor to MongoDB and other open source technologies.
Recently at MongoDB World, it was announced that MongoDB 3.6 would come out in late 2017 or early 2018 (as per the normal schedule). The feature list was very light, as the focus is more on services like Atlas. In this talk, we will go into what we know is confirmed or already completed, and what is on the desired list.
Some of bigger items are:
$comments and $hints in aggregations
$mergeObjects / $$Remove
Fix deep nesting in aggregation (overflow bug)
Intital improvements to support transactions in the future
randomSample for profile added (was added to Percona Server for MongoDB 3.2/ 3.4 already)
Percona Monitoring and Management (PMM) is a platform using Prometheus, Grafana and other tools. This sounds great at the high level, but how do you use it in the real world? What benefit is it to me?
This talk covers these questions and more. We will look at how to use PMM for MongoDB on four examples of different problems, and how you might go about tracing what happened and understanding if it is a normal flow.
We hear a good deal about MongoDB Atlas, Azure's CosmosDB Document Database, and running MongoDB in your environment. However, less is said about how to compare the cost, upkeep, support and pain of running them.
In this talk, we will go through some of the features of each. This includes some of the common challenges in each. There is no perfect solution and you must consider things such as current cloud implementations, staff knowledge, available tooling and (most importantly) budget.
At the end of this talk, you should have a good grasp on how to build out primary and alternate plans when your projects move from development to critical, prime-time production.
Unlike MySQL (and the MySQL manual), there are hidden variables in MongoDB that no one really documents. But they can control things such as how data sets are returned, to connection pool size/ timeouts, to even if intersections should be allowed.
In this talk, we will show you examples of these knobs, how to find them on GitHub, what they are for and when to use them.
Beyond that, we will also talk about some very unknown WiredTiger and MongoRocks internal engine settings that are useful for when your database grows and needs a bit of tweaking to save the day.