webinar: what's new in mongodb 3.2
TRANSCRIPT
What’s New in MongoDB 3.2
Mat KeepDirector, Product Marketing, MongoDB
Andrew MorganPrincipal Product Marketing Manager, MongoDB
MongoDB 3.2 – a BIG Release
Hash-Based ShardingRolesKerberosOn-Prem Monitoring
2.2 2.4 2.6 3.0 3.2
Agg. FrameworkLocation-Aware Sharding
$outIndex IntersectionText SearchField-Level RedactionLDAP & x509Auditing
Document ValidationFast FailoverSimpler ScalabilityAggregation ++Encryption At RestIn-Memory Storage EngineBI Connector$lookupMongoDB CompassAPM IntegrationProfiler VisualizationAuto Index BuildsBackups to File System
Doc-Level ConcurrencyCompressionStorage Engine API≤50 replicasAuditing ++Ops Manager
ThemesBroader use case portfolio. Pluggable storage engine strategy enables us to
rapidly cover more use cases with a single 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.
Storage Engines Broaden Use Cases
Varying Access & Storage Requirements
Modern apps
Sensitive data
Cost effective storage
High concurrenc
y
High throughput
Low latency
Real-time analytics
Flexible Storage Architecture in 3.2
WiredTiger is the New Default
WiredTiger – widely deployed with 3.0 – is
now the default storage engine for
MongoDB.
• Best general purpose storage engine
• 7-10x better write throughput
• Up to 80% compression
117k Security Attacks…..PER DAY
PWC: Global State of Information Security
Encrypted Storage Engine Encrypted storage engine for end-to-end
encryption of sensitive data in regulated
industries
• Reduces the management and performance
overhead of external encryption mechanisms
• AES-256 Encryption, FIPS 140-2 option available
• Key management: Local key management via
keyfile or integration with 3rd party key
management appliance via KMIP
• Based on WiredTiger storage engine
• Requires MongoDB Enterprise Advanced
“Protecting sensitive data assets is one of most important things we do. The new Database Encryption feature in MongoDB 3.2 is a significant step forward in allowing us to more simply add encryption at-rest to our list of security controls.
In our tests, we found the new database encryption feature easy to enable, stable and consistent with our performance expectations.”
Shawn DrewData Integration Solutions ArchitectUniversity of Washington
In-Memory Economic Viability
In-Memory Storage Engine (Beta)Handle ultra-high throughput with low
latency and high availability
• Delivers the extreme throughput and predictable
latency required by the most demanding apps in
Adtech, finance, and more.
• Achieve data durability with replica set members
running disk-backed storage engine
• Available for beta testing and is expected for GA in
early 2016
One Deployment Powering Multiple Apps
Built for Mission Critical Deployments
A 10% improvement in data usability at a Fortune 1000 company could
increase revenues by $2 BN per year
Source: University of Texas, Austin
Data Governance with Document Validation
Implement data governance without
sacrificing agility that comes from dynamic
schema
• Enforce data quality across multiple teams and
applications
• Use familiar MongoDB expressions to control
document structure
• 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
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
“Rocket.Chat and our other applications need to be able to quickly access various types of data to provide a seamless solution for our users.
With MongoDB 3.2, we will now be able to implement the data governance we’re seeking, without sacrificing agility that comes from dynamic schema. The newfound ability to use familiar MongoDB expression syntax to control document structure, rather than learning a whole new language or process, is key for us.”
Gabriel EngelFounder and CEORocket.Chat
Enhancements for your mission-critical appsMore improvements in 3.2 that optimize the
database for your mission-critical
applications
• Meet stringent SLAs with Raft-base fast-failover
algorithm
– Under 2 seconds to detect and recover from
replica set primary failure
– Enhanced durability through write conerns
• Simplified management of sharded clusters
allow you to easily scale to many data centers
– Config servers are now deployed as replica
sets; up to 50 members/locations
Tools for Users Across Your Organization
For Business Analysts & Data Scientists
MongoDB 3.2 allows business analysts and
data scientists to support the business with
new insights from untapped data sources
• MongoDB Connector for BI
• Dynamic Lookup
• New Aggregation Operators & Improved Text
Search
Only 0.5% of data is analyzed
Source: IDC
MongoDB Connector for BIVisualize and explore multi-dimensional
documents using SQL-based BI tools. The
connector does the following:
• Provides the BI tool with the schema of the
MongoDB collection to be visualized
• Translates SQL statements issued by the BI tool
into equivalent MongoDB queries that are sent to
MongoDB for processing
• Converts the results into the tabular format
expected by the BI tool, which can then visualize
the data based on user requirements
“We are thrilled to enable Tableau users, who traditionally work with their relational data, to fully integrate the multi-structured data stored in the database powering modern applications via the new MongoDB BI Connector”
Jeffrey FengProduct ManagerTableau Software
Dynamic LookupCombine data from multiple collections with
left outer joins for richer analytics & more
flexibility in data modeling
• Blend data from multiple collections for analysis
• Higher performance analytics with less
application-side code and less effort from your
developers
• Executed via the new $lookup operator, a stage in
the MongoDB Aggregation Framework pipeline
“I am most excited by the dynamic lookups coming in MongoDB 3.2. The ability to more easily join customer data with 3rd-party data feeds gives us more flexibility in data modeling, and simplifies the real-time analytics we rely on to constantly improve our value to our customers.”
David StricklandCTOMyDealerLot
Aggregation Pipeline
{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}
Aggregation Pipeline
$match{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds} {}
Aggregation Pipeline
$match{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds} {}
{★ds}{★ds}{★ds}
Aggregation Pipeline
$match $project{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds} {}
{★ds}{★ds}{★ds}
{=d+s}
Aggregation Pipeline
$match $project{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds} {}
{★ds}{★ds}{★ds}
{★}{★}{★}
{=d+s}
Aggregation Pipeline
$match $project $lookup{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds} {}
{★ds}{★ds}{★ds}
{★}{★}{★}{★}
{★}{★}{★}
{=d+s}
Aggregation Pipeline
$match $project $lookup{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds} {}
{★ds}{★ds}{★ds}
{★}{★}{★}{★}
{★}{★}{★}
{=d+s}
{★[]}{★[]}{★}
Aggregation Pipeline
$match $project $lookup $group{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds}{★ds} {}
{★ds}{★ds}{★ds}
{★}{★}{★}{★}
{★}{★}{★}
{=d+s}
{ Σ λ σ}{ Σ λ σ}{ Σ λ σ}
{★[]}{★[]}{★}
Improved In-Database Analytics & SearchNew Aggregation operators extend options for
performing analytics and ensure that answers
are delivered quickly and simply with lower
developer complexity
• Array operators: $slice, $arrayElemAt, $concatArrays,
$filter, $min, $max, $avg, $sum, and more
• New mathematical operators: $stdDevSamp,
$stdDevPop, $sqrt, $abs, $trunc, $ceil, $floor, $log,
$pow, $exp, and more
• Random sample of documents: $sample
• Case sensitive text search and support for additional
languages such as Arabic, Farsi, Chinese, and more
For Database AdministratorsMongoDB 3.2 helps users in your
organization understand the data in your
database
• MongoDB Compass
– For DBAs responsible for maintaining the
database in production
– No knowledge of the MongoDB query
language required
MongoDB CompassFor fast schema discovery and visual
construction of ad-hoc queries
• Visualize schema
– Frequency of fields
– Frequency of types
– Determine validator rules
• View Documents
• Graphically build queries
• Authenticated access
MongoDB Compass
Up to 80% of TCO is driven by on-going operations and
maintenance costs
Source: Gartner
For Operations TeamsMongoDB 3.2 simplifies and enhances
MongoDB’s management platforms. Ops
teams can be 10-20x more productive using
Ops and Cloud Manager to run MongoDB.
• Start from a global view of infrastructure:
Integrations with Application Performance
Monitoring platforms
• Drill down: Visual query performance diagnostics,
index recommendations
• Then, deploy: Automated index builds
• Refine: Partial indexes improve resource utilization
Integrations with APM PlatformsEasily incorporate MongoDB performance
metrics into your existing APM dashboards
for global oversight of your entire IT stack
• MongoDB drivers enhanced with new API that
exposes query performance metrics to APM tools
• Packaged integration with Cloud Manager to
visualize server metrics
• Deep dive with Ops and Cloud Manager offering
rich database monitoring & tools for common
operations tasks
“We've been really excited to work with MongoDB on enhancing their APM integration with the New Relic platform. MongoDB has become an integral part of the tooling and workflows of DBAs and Operations teams and we expect the trend to increase.
To support MongoDB 3.2, we jointly-developed an integration between MongoDB Ops Manager and New Relic APM, Insights, and Plugins. These integrations mean MongoDB health can now be monitored alongside the rest of the application estate.".”
Cooper MarcusSenior Product ManagerNew Relic.
Query Perf. Visualizations & OptimizationFast 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
“I’m excited by the availability of Visual Query Profiler in Ops Manager & Cloud Manager. It helps us tremendously improve the performance of our database by identifying queries that are slowing us down and provides recommendations for new indexes -- which it can then build through a rolling index build.”
Daniel RubioDirectorMondo Sports Ltd
Refine with Partial Indexes
Balance delivering good query performance
while consuming fewer system resources
• Specify a filtering expression during index creation
to instruct MongoDB to only include documents
that meet your desired conditions
• The example to the left creates a compound index
that only indexes the documents with the rating
field greater than 5
Ops Manager Enhancements3.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
Next Steps• Download the Whitepaper
– https://www.mongodb.com/collateral/mongodb-3-2-whats-new• Read the Release Notes
– https://docs.mongodb.org/manual/release-notes/3.2/• Not yet ready for production but download and try!
– https://www.mongodb.org/downloads#development • Detailed blogs
– https://www.mongodb.com/blog/• Feedback
– MongoDB 3.2 Bug Hunt• https://www.mongodb.com/blog/post/announcing-the-mongodb-3-2-bug-hunt
– https://jira.mongodb.org/
DISCLAIMER: MongoDB's product plans are for informational purposes only. MongoDB's plans may change and you should not rely on them for delivery of a specific feature at a specific time.
Questions
Mat Keep ([email protected]) @matkeep Andrew Morgan ([email protected]) @andrewmorgan
Conceptual Model of Aggregation Framework
Start with the original collection; each record
(document) contains a number of shapes (keys),
each with a particular color (value)
• $match filters out documents that don’t contain a
red diamond
• $project adds a new “square” attribute with a value
computed from the value (color) of the snowflake
and triangle attributes
Conceptual Model of Aggregation Framework
• $lookup performs a left outer join with another
collection, with the star being the comparison key
• Finally, the $group stage groups the data by the
color of the square and produces statistics for
each group