SlideShare une entreprise Scribd logo
1  sur  53
Best Practices for Upgrading to
MongoDB 3.2
Richard Kreuter
MongoDB
• Upgrading the database itself is pretty easy.
• Upgrading all the bits around the database is…
less easy.
• The effort is worth it.
• We can help you.
What’s cool in 3.2
More use cases. Pluggable storage engines enables you to use MongoDB in more
projects with the same core database.
Mission-critical apps. MongoDB delivers major advances in the critical areas of
governance, high availability, and disaster recovery.
New tools for new users. Now MongoDB is an integral part of the tooling and
workflows of Data Analysts, DBAs, and Operations teams.
3.2 Overview
Document Validation
What you get
• Implement data governance
• Enforce data quality
• Use familiar MongoDB queries to specify validation rules
More power to the DBAs
• The DBA can specify which documents in a collection should be validated
– Pre-existing documents can be left unvalidated, optionally.
• Validation failure consequences are tunable
• Hard error
• Just a warning
Document Validation Example
The example on the left adds a rule to the
contacts collection that validates:
• The year of birth is no later than 1994
• The document contains a phone number and / or
an email address
• When present, the phone number and email
addresses are strings
Partial Indexes
{
"_id" : 1234,
"archived" : "true"
... }
A partial index can
ignore all documents
where ignored
is true.
$lookup Join
What you get
• Equivalent to left outer join
• Built into aggregation framework
$lookup: {
localField : "stock",
foreignField : "stockQuote",
from : "other_collection",
as : "joined_stock" }
Distributed Database Enhancements
Faster Failover for Replica Sets
• Enhanced algorithm detects failure and isolation of primary.
• Clusters more resilient to overloaded or unreliable networks
What you get
• <2 seconds failover (tunable with the electionTimeoutMillis)
How to upgrade:
• Conceptually:
– cfg=rs.conf()
– cfg.protocolVersion=1
– rs.reconfig(cfg)
Config Servers as Replica Sets
Overview
• Config server replica sets can span more than 3 data centers with up to 50 replica set
members supported
What you get
• Simplified sharded deployments
– Config servers are deployed as replica sets
• Improved metadata consistency
• Easily scale to many data centers
How to upgrade
• New clusters only, or a cluster reboot (for now)
Storage Engines
Storage Engine Architecture in 3.2
Content
Repo
IoT Sensor
Backend
Ad Service
Customer
Analytics
Archive
MongoDB Query Language (MQL) + Native Drivers
MongoDB Document Data Model
WT MMAP
Available for MongoDB 3.2
Management
Security
In-memory
(beta)
Encrypted 3rd party
WiredTiger is the Default
What you get
• Best general-purpose storage engine
• 7-10x better throughput
• Up to 80% compression
“Out of the box”
• No special configuration needed
7x-10x Performance, 50%-80% Less Storage
How: WiredTiger Storage Engine
• Same data model, same query
language, same ops
• Write performance gains driven
by document-level concurrency
control
• Storage savings driven by native
compression
• 100% backwards compatible
• Non-disruptive upgrade
MongoDB
3.0
MongoDB
2.6
Performance
50%-80% Less Storage via Compression
• Better storage utilization
• Higher I/O scalability
• Multiple compression options
– Snappy
– zlib
– None
• Data and journal compressed on disk
• Indexes compressed on disk and in memory
Compression in action
Encrypted Storage
What you get
• Encryption of sensitive data for regulated industries
• ~ 15% overhead
• Better than many 3rd party encryption tools
Note
• Based on the WiredTiger Storage Engine
• Available in MongoDB Enterprise Advanced
How to upgrade
• Rolling upgrade
In-Memory Storage
• Predictable throughput and latency
• In-memory computing without trading away guarantees of disk-based
databases like
– Rich query flexibility
– Real-time analytics
– Scalable capacity
– Durability
• Durability via replica set secondaries (using mmap/wt)
One Deployment Powering MultipleApps
New Tools for New Users
Data Analysts
• BI Connector
• $lookup
• Aggregation Enhancements:
Faster & simpler real-time analytics
DBAs
MongoDB Compass
• Visualize schema
• View Documents
• Graphically build queries
• Authenticated access
Operations
Integration with standard operational workflow reduces
overhead
• Start from global view of infrastructure: APM tools
integration, e.g. New Relic, AppDynamics.
• Then, drill down: Profiler visualization in Ops Manager
• Then, deploy: Automated index builds
• Next, refine: Partial Indexes improve resource utilization
Ops Manager & Cloud Manager
Single-click provisioning, scaling &
upgrades, admin tasks
Monitoring, with charts, dashboards and
alerts on 100+ metrics
Backup and restore, with point-in-time
recovery, support for sharded clusters
MongoDB Ops Manager / Cloud Manager
The Best Way to Manage MongoDB In Your Data Center
Up to 95% Reduction in Operational Overhead
How Ops Manager / Cloud Manager Helps You
Scale EasilyMeet SLAs
Best Practices,
Automated
Cut
Management
Overhead
Query Perf. Visualizations & Optimization
Fast and simple query optimization with the
new Visual Query Profiler
• Query and write latency are consolidated and
displayed visually; your ops teams can easily
identify slower queries and latency spikes
• Visual query profiler analyzes the data it displays
and provides recommendations for new indexes
that can be created to improve query
performance
• Ops Manager and Cloud Manager can automate
the rollout of new indexes, reducing risk and your
team’s operational overhead
Ops Manager Backup Enhancements
3.2 includes Ops Manager enhancements to
improve the productivity of your ops teams
and further simplify installation and
management
• MongoDB backup on standard network-mountable
filesystems; integrates with your existing storage
infrastructure
• Automated database restores; Build clusters from backup in a
few clicks
• Faster time to first database snapshot
• Support for maintenance windows
• Centralized UI for installation and config of all application and
backup components
These new capabilities and
enhancements are why it's worth
upgrading to MongoDB 3.2.
Upgrading MongoDB in Outline
• Manual upgrades – lots of steps, but doable
• Automatic – Ops Manager / Cloud Manager
Manual Upgrade
Upgrading a cluster manually
• Follow the steps in the fine documentation:
– http://docs.mongodb.org/manual/release-notes/3.2-upgrade/
– First result if Googling for “MongoDB Upgrade”
• It's critical to note that upgrade order matters:
– For replica sets, first upgrade the secondaries, then the primaries.
– For a sharded cluster, follow the 7 steps in the documentation.
Automatic
Upgrading a cluster withAutomation
• Ops Manager / Cloud Manager is the easiest, fastest, and best way to
upgrade a MongoDB deployment
– One-click upgrades.
– Rolling upgrades, so zero downtime.
Upgrades
• Select Desired
Version from
Dropdown
As you can see, upgrading the
database software itself is pretty easy.
The fine details
• Backward compatibility & your application
• Backward compatibility & your operations
• Database behavior & performance
• Enabling 3.2 Features
Backward Compatibility
Backward Compatibility: App
• Comprehensive documentation about incompatible changes
– https://docs.mongodb.org/manual/release-notes/3.2-compatibility
• Highlights
– You may need to upgrade your applications' drivers before upgrading
MongoDB!
– Some commands/methods deprecated, removed, changed.
• Audit your codebase for uses of deprecated functionality.
Backward Compatibility: Ops
• Comprehensive documentation about incompatible changes
– https://docs.mongodb.org/manual/release-notes/3.2-compatibility
• Highlights
– Some settings deprecated, others mmapv1-only.
– Stricter replica set configuration validation
– mongo* tools' options changed
– Legacy (pre-2.6) user account model removed
• Audit scripts & other infrastructure you've got around.
Database Behavior & Performance
Database Behavior & Performance
• Always test your application with the new database version before upgrading
production
– Apps sometimes rely on unspecified behaviors (e.g. stability of results
from unsorted queries)
– Query optimizer improvements may affect index selection (check
important queries with explain)
Good practice: Test against Staging
• Run all your performance correctness tests against a staging environment
for some time before upgrading production.
• Best practice: run a real application workload against a 3.2 staging
environment, too.
– Replicate the workload manually
– Use Facebook’s Flashback tool
In our experience, upgrading
everything around the database
software is where the work is.
Recap
Upgrading Revisited
• Plan
• Practice
• Productionize
Plan Your Upgrade
• Review the compatibility notes
– Audit apps, ops for deprecated details
• Upgrade drivers, scripts, if necessary
– Might require some recoding, in edge cases
• Make sure you've got good tests
– App behavior, performance, etc.
• Write a checklist of upgrade steps for your environments
Practice Your Upgrade
• Upgrade apps & database in staging environment
• Test, test, test.
– If no problems appear within (say) a week of continuous testing, probably
a decent candidate.
Productionize Your Upgrade
• Upgrade apps & database in production environment
– Ideally, during minimum load/traffic conditions, just for good measure
MongoDB's team can help you!
How we help users upgrade
• MongoDB's Professional Services team offers consulting engagements
specifically for upgrading:
– To ensure upward compatibility for your apps, tools
– To assist with performance & behavior testing around database upgrades
– To prepare & execute upgrade plans with your team in your environments.
Contact us for more info: http://mongodb.com/upgrade
consulting@mongodb.com

Contenu connexe

Tendances

MongoDB Capacity Planning
MongoDB Capacity PlanningMongoDB Capacity Planning
MongoDB Capacity PlanningNorberto Leite
 
Webinar: What's New in MongoDB 3.2
Webinar: What's New in MongoDB 3.2Webinar: What's New in MongoDB 3.2
Webinar: What's New in MongoDB 3.2MongoDB
 
Capacity Planning
Capacity PlanningCapacity Planning
Capacity PlanningMongoDB
 
MongoDB Administration 101
MongoDB Administration 101MongoDB Administration 101
MongoDB Administration 101MongoDB
 
MongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDB
MongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDBMongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDB
MongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDBMongoDB
 
Remote DBA Experts 11g Features
Remote DBA Experts 11g FeaturesRemote DBA Experts 11g Features
Remote DBA Experts 11g FeaturesRemote DBA Experts
 
5 Postgres DBA Tips
5 Postgres DBA Tips5 Postgres DBA Tips
5 Postgres DBA TipsEDB
 
Mongo db eveningschemadesign
Mongo db eveningschemadesignMongo db eveningschemadesign
Mongo db eveningschemadesignMongoDB APAC
 
Engineering an Encrypted Storage Engine
Engineering an Encrypted Storage EngineEngineering an Encrypted Storage Engine
Engineering an Encrypted Storage EngineMongoDB
 
Securing Your MongoDB Deployment
Securing Your MongoDB DeploymentSecuring Your MongoDB Deployment
Securing Your MongoDB DeploymentMongoDB
 
MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger
MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger
MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger MongoDB
 
Conceptos Avanzados 1: Motores de Almacenamiento
Conceptos Avanzados 1: Motores de AlmacenamientoConceptos Avanzados 1: Motores de Almacenamiento
Conceptos Avanzados 1: Motores de AlmacenamientoMongoDB
 
An Elastic Metadata Store for eBay’s Media Platform
An Elastic Metadata Store for eBay’s Media PlatformAn Elastic Metadata Store for eBay’s Media Platform
An Elastic Metadata Store for eBay’s Media PlatformMongoDB
 
Ops manager webinar mar 5, 2015
Ops manager webinar   mar 5, 2015Ops manager webinar   mar 5, 2015
Ops manager webinar mar 5, 2015MongoDB
 
Capacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB ClusterCapacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB ClusterMongoDB
 
Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise MongoDB
 
https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...
https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...
https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...MongoDB
 
Key Performance Indicators for Managing MongoDB and Recommended Production Co...
Key Performance Indicators for Managing MongoDB and Recommended Production Co...Key Performance Indicators for Managing MongoDB and Recommended Production Co...
Key Performance Indicators for Managing MongoDB and Recommended Production Co...MongoDB
 

Tendances (20)

MongoDB Capacity Planning
MongoDB Capacity PlanningMongoDB Capacity Planning
MongoDB Capacity Planning
 
What's new in MongoDB 2.6
What's new in MongoDB 2.6What's new in MongoDB 2.6
What's new in MongoDB 2.6
 
Webinar: What's New in MongoDB 3.2
Webinar: What's New in MongoDB 3.2Webinar: What's New in MongoDB 3.2
Webinar: What's New in MongoDB 3.2
 
Capacity Planning
Capacity PlanningCapacity Planning
Capacity Planning
 
MongoDB Administration 101
MongoDB Administration 101MongoDB Administration 101
MongoDB Administration 101
 
MongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDB
MongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDBMongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDB
MongoDB Days Silicon Valley: Best Practices for Upgrading to MongoDB
 
Remote DBA Experts 11g Features
Remote DBA Experts 11g FeaturesRemote DBA Experts 11g Features
Remote DBA Experts 11g Features
 
5 Postgres DBA Tips
5 Postgres DBA Tips5 Postgres DBA Tips
5 Postgres DBA Tips
 
Mongo db eveningschemadesign
Mongo db eveningschemadesignMongo db eveningschemadesign
Mongo db eveningschemadesign
 
Engineering an Encrypted Storage Engine
Engineering an Encrypted Storage EngineEngineering an Encrypted Storage Engine
Engineering an Encrypted Storage Engine
 
Securing Your MongoDB Deployment
Securing Your MongoDB DeploymentSecuring Your MongoDB Deployment
Securing Your MongoDB Deployment
 
MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger
MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger
MongoDB Days Silicon Valley: A Technical Introduction to WiredTiger
 
Conceptos Avanzados 1: Motores de Almacenamiento
Conceptos Avanzados 1: Motores de AlmacenamientoConceptos Avanzados 1: Motores de Almacenamiento
Conceptos Avanzados 1: Motores de Almacenamiento
 
Rpsonmongodb
RpsonmongodbRpsonmongodb
Rpsonmongodb
 
An Elastic Metadata Store for eBay’s Media Platform
An Elastic Metadata Store for eBay’s Media PlatformAn Elastic Metadata Store for eBay’s Media Platform
An Elastic Metadata Store for eBay’s Media Platform
 
Ops manager webinar mar 5, 2015
Ops manager webinar   mar 5, 2015Ops manager webinar   mar 5, 2015
Ops manager webinar mar 5, 2015
 
Capacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB ClusterCapacity Planning For Your Growing MongoDB Cluster
Capacity Planning For Your Growing MongoDB Cluster
 
Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise Securing Your Enterprise Web Apps with MongoDB Enterprise
Securing Your Enterprise Web Apps with MongoDB Enterprise
 
https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...
https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...
https://docs.google.com/presentation/d/1DcL4zK6i3HZRDD4xTGX1VpSOwyu2xBeWLT6a_...
 
Key Performance Indicators for Managing MongoDB and Recommended Production Co...
Key Performance Indicators for Managing MongoDB and Recommended Production Co...Key Performance Indicators for Managing MongoDB and Recommended Production Co...
Key Performance Indicators for Managing MongoDB and Recommended Production Co...
 

En vedette

Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0MongoDB
 
How We Test MongoDB: Evergreen
How We Test MongoDB: EvergreenHow We Test MongoDB: Evergreen
How We Test MongoDB: EvergreenMongoDB
 
Step-by-Step Parse Migration
Step-by-Step Parse MigrationStep-by-Step Parse Migration
Step-by-Step Parse MigrationMongoDB
 
Webinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleWebinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleMongoDB
 
Webinar: The Visual Query Profiler and MongoDB Compass
Webinar: The Visual Query Profiler and MongoDB CompassWebinar: The Visual Query Profiler and MongoDB Compass
Webinar: The Visual Query Profiler and MongoDB CompassMongoDB
 
Webinar: Scaling MongoDB
Webinar: Scaling MongoDBWebinar: Scaling MongoDB
Webinar: Scaling MongoDBMongoDB
 
Distributed Consensus in MongoDB's Replication System
Distributed Consensus in MongoDB's Replication SystemDistributed Consensus in MongoDB's Replication System
Distributed Consensus in MongoDB's Replication SystemMongoDB
 
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 ImplicationsMongoDB
 
Webinar: Elevate Your Enterprise Architecture with In-Memory Computing
Webinar: Elevate Your Enterprise Architecture with In-Memory ComputingWebinar: Elevate Your Enterprise Architecture with In-Memory Computing
Webinar: Elevate Your Enterprise Architecture with In-Memory ComputingMongoDB
 
Webinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineWebinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineMongoDB
 
MongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and Kafka
MongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and KafkaMongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and Kafka
MongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and KafkaMongoDB
 
High Performance Applications with MongoDB
High Performance Applications with MongoDBHigh Performance Applications with MongoDB
High Performance Applications with MongoDBMongoDB
 
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 & MongoDBMongoDB
 
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
 
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
 

En vedette (15)

Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0Webinar: Best Practices for Upgrading to MongoDB 3.0
Webinar: Best Practices for Upgrading to MongoDB 3.0
 
How We Test MongoDB: Evergreen
How We Test MongoDB: EvergreenHow We Test MongoDB: Evergreen
How We Test MongoDB: Evergreen
 
Step-by-Step Parse Migration
Step-by-Step Parse MigrationStep-by-Step Parse Migration
Step-by-Step Parse Migration
 
Webinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and ScaleWebinar: Choosing the Right Shard Key for High Performance and Scale
Webinar: Choosing the Right Shard Key for High Performance and Scale
 
Webinar: The Visual Query Profiler and MongoDB Compass
Webinar: The Visual Query Profiler and MongoDB CompassWebinar: The Visual Query Profiler and MongoDB Compass
Webinar: The Visual Query Profiler and MongoDB Compass
 
Webinar: Scaling MongoDB
Webinar: Scaling MongoDBWebinar: Scaling MongoDB
Webinar: Scaling MongoDB
 
Distributed Consensus in MongoDB's Replication System
Distributed Consensus in MongoDB's Replication SystemDistributed Consensus in MongoDB's Replication System
Distributed Consensus in MongoDB's Replication System
 
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
 
Webinar: Elevate Your Enterprise Architecture with In-Memory Computing
Webinar: Elevate Your Enterprise Architecture with In-Memory ComputingWebinar: Elevate Your Enterprise Architecture with In-Memory Computing
Webinar: Elevate Your Enterprise Architecture with In-Memory Computing
 
Webinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage EngineWebinar: Schema Patterns and Your Storage Engine
Webinar: Schema Patterns and Your Storage Engine
 
MongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and Kafka
MongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and KafkaMongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and Kafka
MongoDB Europe 2016 - Powering Microservices with Docker, Kubernetes, and Kafka
 
High Performance Applications with MongoDB
High Performance Applications with MongoDBHigh Performance Applications with MongoDB
High Performance Applications with MongoDB
 
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
 
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
 
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
 

Similaire à Webinar: Best Practices for Upgrading to MongoDB 3.2

MongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and Beyond
MongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and BeyondMongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and Beyond
MongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and BeyondMongoDB
 
Webinar : Nouveautés de MongoDB 3.2
Webinar : Nouveautés de MongoDB 3.2Webinar : Nouveautés de MongoDB 3.2
Webinar : Nouveautés de MongoDB 3.2MongoDB
 
Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2Sam_Francis
 
Webinar: Introduction to MongoDB 3.0
Webinar: Introduction to MongoDB 3.0Webinar: Introduction to MongoDB 3.0
Webinar: Introduction to MongoDB 3.0MongoDB
 
MongoDB 3.2 Feature Preview
MongoDB 3.2 Feature PreviewMongoDB 3.2 Feature Preview
MongoDB 3.2 Feature PreviewNorberto Leite
 
Adding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance TestAdding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance TestRodolfo Kohn
 
Budapest Spring MUG 2016 - MongoDB User Group
Budapest Spring MUG 2016 - MongoDB User GroupBudapest Spring MUG 2016 - MongoDB User Group
Budapest Spring MUG 2016 - MongoDB User GroupMarc Schwering
 
Introducing MongoDB 2.6
Introducing MongoDB 2.6Introducing MongoDB 2.6
Introducing MongoDB 2.6MongoDB
 
05. performance-concepts
05. performance-concepts05. performance-concepts
05. performance-conceptsMuhammad Ahad
 
Automate, monitor and manage MongoDB cluster deployment
Automate, monitor and manage MongoDB cluster deploymentAutomate, monitor and manage MongoDB cluster deployment
Automate, monitor and manage MongoDB cluster deploymentAshnikbiz
 
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
 
Performance tuning and optimization on client server
Performance tuning and optimization on client serverPerformance tuning and optimization on client server
Performance tuning and optimization on client serverSatya P. Joshi
 
Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.Rolta
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahuDr. Prakash Sahu
 
Monitoring your physical, virtual and cloud infrastructure with Applications ...
Monitoring your physical, virtual and cloud infrastructure with Applications ...Monitoring your physical, virtual and cloud infrastructure with Applications ...
Monitoring your physical, virtual and cloud infrastructure with Applications ...ManageEngine, Zoho Corporation
 
071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephenSteve Feldman
 
MongoDB Management Service: Getting Started with MMS
MongoDB Management Service: Getting Started with MMSMongoDB Management Service: Getting Started with MMS
MongoDB Management Service: Getting Started with MMSMongoDB
 
Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2James Cowie
 

Similaire à Webinar: Best Practices for Upgrading to MongoDB 3.2 (20)

MongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and Beyond
MongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and BeyondMongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and Beyond
MongoDB Evenings Chicago - Find Your Way in MongoDB 3.2: Compass and Beyond
 
Webinar : Nouveautés de MongoDB 3.2
Webinar : Nouveautés de MongoDB 3.2Webinar : Nouveautés de MongoDB 3.2
Webinar : Nouveautés de MongoDB 3.2
 
Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2Webminar - Novedades de MongoDB 3.2
Webminar - Novedades de MongoDB 3.2
 
Webinar: Introduction to MongoDB 3.0
Webinar: Introduction to MongoDB 3.0Webinar: Introduction to MongoDB 3.0
Webinar: Introduction to MongoDB 3.0
 
MongoDB 3.2 Feature Preview
MongoDB 3.2 Feature PreviewMongoDB 3.2 Feature Preview
MongoDB 3.2 Feature Preview
 
JMeter
JMeterJMeter
JMeter
 
Adding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance TestAdding Value in the Cloud with Performance Test
Adding Value in the Cloud with Performance Test
 
Budapest Spring MUG 2016 - MongoDB User Group
Budapest Spring MUG 2016 - MongoDB User GroupBudapest Spring MUG 2016 - MongoDB User Group
Budapest Spring MUG 2016 - MongoDB User Group
 
Introducing MongoDB 2.6
Introducing MongoDB 2.6Introducing MongoDB 2.6
Introducing MongoDB 2.6
 
05. performance-concepts
05. performance-concepts05. performance-concepts
05. performance-concepts
 
Automate, monitor and manage MongoDB cluster deployment
Automate, monitor and manage MongoDB cluster deploymentAutomate, monitor and manage MongoDB cluster deployment
Automate, monitor and manage MongoDB cluster deployment
 
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
 
Performance tuning and optimization on client server
Performance tuning and optimization on client serverPerformance tuning and optimization on client server
Performance tuning and optimization on client server
 
Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahu
 
Monitoring your physical, virtual and cloud infrastructure with Applications ...
Monitoring your physical, virtual and cloud infrastructure with Applications ...Monitoring your physical, virtual and cloud infrastructure with Applications ...
Monitoring your physical, virtual and cloud infrastructure with Applications ...
 
071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen
 
MongoDB Management Service: Getting Started with MMS
MongoDB Management Service: Getting Started with MMSMongoDB Management Service: Getting Started with MMS
MongoDB Management Service: Getting Started with MMS
 
Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2Expert guidance on migrating from magento 1 to magento 2
Expert guidance on migrating from magento 1 to magento 2
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 

Dernier

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Dernier (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

Webinar: Best Practices for Upgrading to MongoDB 3.2

  • 1. Best Practices for Upgrading to MongoDB 3.2 Richard Kreuter MongoDB
  • 2. • Upgrading the database itself is pretty easy. • Upgrading all the bits around the database is… less easy. • The effort is worth it. • We can help you.
  • 4. More use cases. Pluggable storage engines enables you to use MongoDB in more projects with the same core database. Mission-critical apps. MongoDB delivers major advances in the critical areas of governance, high availability, and disaster recovery. New tools for new users. Now MongoDB is an integral part of the tooling and workflows of Data Analysts, DBAs, and Operations teams. 3.2 Overview
  • 5. Document Validation What you get • Implement data governance • Enforce data quality • Use familiar MongoDB queries to specify validation rules More power to the DBAs • The DBA can specify which documents in a collection should be validated – Pre-existing documents can be left unvalidated, optionally. • Validation failure consequences are tunable • Hard error • Just a warning
  • 6. Document Validation Example The example on the left adds a rule to the contacts collection that validates: • The year of birth is no later than 1994 • The document contains a phone number and / or an email address • When present, the phone number and email addresses are strings
  • 7. Partial Indexes { "_id" : 1234, "archived" : "true" ... } A partial index can ignore all documents where ignored is true.
  • 8. $lookup Join What you get • Equivalent to left outer join • Built into aggregation framework $lookup: { localField : "stock", foreignField : "stockQuote", from : "other_collection", as : "joined_stock" }
  • 10. Faster Failover for Replica Sets • Enhanced algorithm detects failure and isolation of primary. • Clusters more resilient to overloaded or unreliable networks What you get • <2 seconds failover (tunable with the electionTimeoutMillis) How to upgrade: • Conceptually: – cfg=rs.conf() – cfg.protocolVersion=1 – rs.reconfig(cfg)
  • 11. Config Servers as Replica Sets Overview • Config server replica sets can span more than 3 data centers with up to 50 replica set members supported What you get • Simplified sharded deployments – Config servers are deployed as replica sets • Improved metadata consistency • Easily scale to many data centers How to upgrade • New clusters only, or a cluster reboot (for now)
  • 13. Storage Engine Architecture in 3.2 Content Repo IoT Sensor Backend Ad Service Customer Analytics Archive MongoDB Query Language (MQL) + Native Drivers MongoDB Document Data Model WT MMAP Available for MongoDB 3.2 Management Security In-memory (beta) Encrypted 3rd party
  • 14. WiredTiger is the Default What you get • Best general-purpose storage engine • 7-10x better throughput • Up to 80% compression “Out of the box” • No special configuration needed
  • 15. 7x-10x Performance, 50%-80% Less Storage How: WiredTiger Storage Engine • Same data model, same query language, same ops • Write performance gains driven by document-level concurrency control • Storage savings driven by native compression • 100% backwards compatible • Non-disruptive upgrade MongoDB 3.0 MongoDB 2.6 Performance
  • 16. 50%-80% Less Storage via Compression • Better storage utilization • Higher I/O scalability • Multiple compression options – Snappy – zlib – None • Data and journal compressed on disk • Indexes compressed on disk and in memory
  • 18. Encrypted Storage What you get • Encryption of sensitive data for regulated industries • ~ 15% overhead • Better than many 3rd party encryption tools Note • Based on the WiredTiger Storage Engine • Available in MongoDB Enterprise Advanced How to upgrade • Rolling upgrade
  • 19. In-Memory Storage • Predictable throughput and latency • In-memory computing without trading away guarantees of disk-based databases like – Rich query flexibility – Real-time analytics – Scalable capacity – Durability • Durability via replica set secondaries (using mmap/wt)
  • 20. One Deployment Powering MultipleApps
  • 21. New Tools for New Users
  • 22. Data Analysts • BI Connector • $lookup • Aggregation Enhancements: Faster & simpler real-time analytics
  • 23. DBAs MongoDB Compass • Visualize schema • View Documents • Graphically build queries • Authenticated access
  • 24. Operations Integration with standard operational workflow reduces overhead • Start from global view of infrastructure: APM tools integration, e.g. New Relic, AppDynamics. • Then, drill down: Profiler visualization in Ops Manager • Then, deploy: Automated index builds • Next, refine: Partial Indexes improve resource utilization
  • 25. Ops Manager & Cloud Manager
  • 26. Single-click provisioning, scaling & upgrades, admin tasks Monitoring, with charts, dashboards and alerts on 100+ metrics Backup and restore, with point-in-time recovery, support for sharded clusters MongoDB Ops Manager / Cloud Manager The Best Way to Manage MongoDB In Your Data Center Up to 95% Reduction in Operational Overhead
  • 27. How Ops Manager / Cloud Manager Helps You Scale EasilyMeet SLAs Best Practices, Automated Cut Management Overhead
  • 28. Query Perf. Visualizations & Optimization Fast and simple query optimization with the new Visual Query Profiler • Query and write latency are consolidated and displayed visually; your ops teams can easily identify slower queries and latency spikes • Visual query profiler analyzes the data it displays and provides recommendations for new indexes that can be created to improve query performance • Ops Manager and Cloud Manager can automate the rollout of new indexes, reducing risk and your team’s operational overhead
  • 29. Ops Manager Backup Enhancements 3.2 includes Ops Manager enhancements to improve the productivity of your ops teams and further simplify installation and management • MongoDB backup on standard network-mountable filesystems; integrates with your existing storage infrastructure • Automated database restores; Build clusters from backup in a few clicks • Faster time to first database snapshot • Support for maintenance windows • Centralized UI for installation and config of all application and backup components
  • 30. These new capabilities and enhancements are why it's worth upgrading to MongoDB 3.2.
  • 31. Upgrading MongoDB in Outline • Manual upgrades – lots of steps, but doable • Automatic – Ops Manager / Cloud Manager
  • 33. Upgrading a cluster manually • Follow the steps in the fine documentation: – http://docs.mongodb.org/manual/release-notes/3.2-upgrade/ – First result if Googling for “MongoDB Upgrade” • It's critical to note that upgrade order matters: – For replica sets, first upgrade the secondaries, then the primaries. – For a sharded cluster, follow the 7 steps in the documentation.
  • 35. Upgrading a cluster withAutomation • Ops Manager / Cloud Manager is the easiest, fastest, and best way to upgrade a MongoDB deployment – One-click upgrades. – Rolling upgrades, so zero downtime.
  • 37. As you can see, upgrading the database software itself is pretty easy.
  • 38. The fine details • Backward compatibility & your application • Backward compatibility & your operations • Database behavior & performance • Enabling 3.2 Features
  • 40. Backward Compatibility: App • Comprehensive documentation about incompatible changes – https://docs.mongodb.org/manual/release-notes/3.2-compatibility • Highlights – You may need to upgrade your applications' drivers before upgrading MongoDB! – Some commands/methods deprecated, removed, changed. • Audit your codebase for uses of deprecated functionality.
  • 41. Backward Compatibility: Ops • Comprehensive documentation about incompatible changes – https://docs.mongodb.org/manual/release-notes/3.2-compatibility • Highlights – Some settings deprecated, others mmapv1-only. – Stricter replica set configuration validation – mongo* tools' options changed – Legacy (pre-2.6) user account model removed • Audit scripts & other infrastructure you've got around.
  • 42. Database Behavior & Performance
  • 43. Database Behavior & Performance • Always test your application with the new database version before upgrading production – Apps sometimes rely on unspecified behaviors (e.g. stability of results from unsorted queries) – Query optimizer improvements may affect index selection (check important queries with explain)
  • 44. Good practice: Test against Staging • Run all your performance correctness tests against a staging environment for some time before upgrading production. • Best practice: run a real application workload against a 3.2 staging environment, too. – Replicate the workload manually – Use Facebook’s Flashback tool
  • 45. In our experience, upgrading everything around the database software is where the work is.
  • 46. Recap
  • 47. Upgrading Revisited • Plan • Practice • Productionize
  • 48. Plan Your Upgrade • Review the compatibility notes – Audit apps, ops for deprecated details • Upgrade drivers, scripts, if necessary – Might require some recoding, in edge cases • Make sure you've got good tests – App behavior, performance, etc. • Write a checklist of upgrade steps for your environments
  • 49. Practice Your Upgrade • Upgrade apps & database in staging environment • Test, test, test. – If no problems appear within (say) a week of continuous testing, probably a decent candidate.
  • 50. Productionize Your Upgrade • Upgrade apps & database in production environment – Ideally, during minimum load/traffic conditions, just for good measure
  • 51. MongoDB's team can help you!
  • 52. How we help users upgrade • MongoDB's Professional Services team offers consulting engagements specifically for upgrading: – To ensure upward compatibility for your apps, tools – To assist with performance & behavior testing around database upgrades – To prepare & execute upgrade plans with your team in your environments. Contact us for more info: http://mongodb.com/upgrade

Notes de l'éditeur

  1. Presentation at 5, so I'll do a quick overview of the features
  2. Validation is optional, and can be as simple as a single field, all the way to every field, including existence, data types, and regular expressions. Failed validation tests can result in a hard error or just a warning
  3. Validation is optional, and can be as simple as a single field, all the way to every field, including existence, data types, and regular expressions. Failed validation tests can result in a hard error or just a warning
  4. Raft like protocol, with election terms Timeout was previously for all Fast Failure - in many scenarios failover will be well under 2 seconds including sub-second, but we want to set reliable expectations The exact failover time is dependent on the system’s configuration (for example the network latency between data centers), but for a typical configuration it would be no more than 2 seconds – the user can tune this using the electionTimeoutMillis parameter.
  5. Config server setup provides higher levels of availability and lower cross-region latency.
  6. Now let’s take a deep dive into the Storage Engines and how they can help you use MongoDB for a wide array of new projects. With this release you get a lot more choice with your storage engines. You can mix and match multiple storage engines within a deployment to bring a new level of optimization to your applications. Let’s take a look so you can see which is right for you.
  7. WiredTiger was available as an alternative to the MMAP Storage Engine, which was the default storage engine in previous to MongoDB 3.0. WiredTiger offers a lot of benefits to MongoDB users. WiredTiger has granular concurrency control and native compression, giving you better storage efficiency and higher performance for a broad range of apps. Now it is the default storage engine in MongoDB 3.2, so no need to do any special configuration to get these benefits.
  8. Upgrade can be made transparently, the application will not know. Different performance operational profiles. WT: Excellent write performance
  9. Encrypted Storage engine is the name of the feature but is NOT separate from WT, rather an option -- want to avoid any chance of confusion! KMIP is a popular standard that we plan to support; SafeNet and Vormetric are good examples, as is Amazon’s KMS
  10. In-memory computing is known to be much faster, and it enables data access and analytics at speeds never before possible. However, in the past, memory costs were prohibitive. Now, that the cost of memory has gone down, and will continue to tumble, you can take advantage of these performance gains.
  11. As illustrated by the ecommerce example above, user data is managed by the In-Memory engine to provide the throughput and bounded latency essential for great customer experience. However, the product catalog’s data storage requirements exceed server memory capacity, so is provisioned to another MongoDB replica set configured with the disk-based WiredTiger storage engine. In this example, MongoDB’s flexible storage architecture means developers are freed from the complexity of having to use different in-memory and disk-based databases to support the e-commerce application. Administrators are freed from the complexity of having to configure and manage separate data layers. Instead, the application uses the same MongoDB database with each service powered by the storage engine best optimized for the use case.
  12. BI Connector requires Enterprise Advanced subscription SQL supported is read-only and covers what is required for most BI tools (we can’t simply say SQL92 b/c it only supports reads)
  13. MongoDB Compass requires Professional of Enterprise Advanced subscription “Determine validator rules”: you can use the tool to figure out what you want to set as validation rules. A future version could integrate with the database to set document validation rules for a collection.
  14. MongoDB Ops Manager and Cloud Manager is the best way to run MongoDB, reducing tasks such as deployment, scaling, upgrades and backups to just a few clicks or an API call. Operations teams can be 10-20x more productive using the Ops or Cloud Manager platforms. With these enhancements to Ops and Cloud manager, administrators can Integrate MongoDB alongside existing Application Performance Monitoring platforms for global health visibility over the entire IT estate, all from a single pane of glass Drill down into any MongoDB-specific issues using Ops Manager’s monitoring of key database telemetry, including new query profiler visualizations Create a point-in-time backups and consistent snapshots of the database on standard network-mountable filesystems Use Ops Manager automation to initiate zero-downtime maintenance and upgrade activities, such as rolling out new indexes across a sharded cluster Profiler Visualization: Enabling Fast and Simple Query Optimization Automated Index Builds New Indexing Option: Partial Indexes
  15. Ops Manager can do a lot for [ops teams]. Best Practices, Automated. Ops Manager takes best practices for running MongoDB and automates them. So you run ops the way MongoDB engineers would do it. This not only makes it more fool-proof, but it also helps you… Cut Management Overhead. No custom scripting or special setup needed. You can spend less time running and managing manual tasks because Ops Manager takes care of a lot of the work for you, letting you focus on other tasks. Meet SLAs. Automating critical management tasks makes it easier to meet uptime SLAs. This includes managing failover as well as doing rolling upgrades with no downtime. Scale Easily. Provision new nodes and systems with a single click.
  16. Order Matters
  17. xxx
  18. If upgrading to 3.0, votes User Roles, of the SuperUser/ReadOnly Audit
  19. Be careful, MongoDB will have some changes in the behavriou or performance Large complicated piece of software. Some things we intend to do, and we document them, and there are behavrious that we don’t follow. From time to time, changes in implementaion. Your application might inadvertenly rely on this.
  20. Always test your application against the new version. Most of you might way of course. Optimizer, look at the explain plain When you throw a query at MongoDB when you don’t specify sort order, you’ll get one order, and newer version don’t make that promeise. They never made that promise
  21. Always test your application against the new version. Most of you might way of course. Optimizer, look at the explain plain When you throw a query at MongoDB when you don’t specify sort order, you’ll get one order, and newer version don’t make that promeise. They never made that promise
  22. enable 3.2.0 features
  23. A few days, perhaps a week. Rolling upgrade Burn in test
  24. We’ll construct these plans, we’ll help write test scripts to simulate the workload or maybe even record the workload and then replay it.