MongoDB is the leading open-source, document database. In this webinar we'll dive into the technical details of MongoDB by first focusing on what makes it different from traditional relational database management systems. We'll review data storage, high availability and scaling for MongoDB. Next we'll discuss what's involved in deploying MongoDB in production. Finally, we'll delve into some of the operational challenges including performance tuning, capacity planning and what it takes to deploy robust highly-available cluster topology.
6. MongoDB and Enterprise IT Stack
EDWHadoop
Management&Monitoring
Security&Auditing
RDBMS
CRM, ERP, Collaboration, Mobile, BI
OS & Virtualization, Compute, Storage, Network
RDBMS
Applications
Infrastructure
Data Management
Online Data Offline Data
7. Data HubUser Data Management
Big Data Content Mgmt & Delivery Mobile & Social
MongoDB Solutions
8. • 10 of the Top Financial Services Institutions
• 10 of the Top Electronics Companies
• 10 of the Top Media and Entertainment
Companies
• 8 of the Top Retailers
• 6 of the Top Telcos
• 5 of the Top Technology Companies
• 4 of the Top Healthcare Companies
Fortune 500 & Global 500
14. Document Model Benefits
• Agility and flexibility
– Data models can evolve easily
– Companiescan adapt to changes quickly
• Intuitive, natural data representation
– Developers are more productive
– Many types of applicationsare a good fit
• Reduces the need for joins, disk seeks
– Programmingis more simple
– Performance can be delivered at scale
15. MongoDB is full featured
MongoDB
Rich Queries
• Find Paul’s cars
• Find everybody in London with a car
built between 1970 and 1980
Geospatial
• Find all of the car owners within 5km of
Trafalgar Sq.
Text Search
• Find all the cars described as having
leather seats
Aggregation
• Calculate the average value of every
user's car collection
Map Reduce
• What is the ownership pattern of colors
by geography over time? (is purple
trending up in China?)
{
first_name: „Paul‟,
surname: „Miller‟,
city: „London‟,
location: [45.123,47.232],
cars: [
{ model: „Bentley‟,
year: 1973,
value: 100000, … },
{ model: „Rolls Royce‟,
year: 1965,
value: 330000, … }
}
}
16. Shell
Command-line shell for interacting
directly with database
Shell and Drivers
Drivers
Drivers for most popular
programming languages and
frameworks
>
db.collection.insert({company:“10gen”, product:“MongoDB”}
)
>
> db.collection.findOne()
{
“_id” : ObjectId(“5106c1c2fc629bfe52792e86”),
“company” : “10gen”
“product” : “MongoDB”
}
Java
Python
Perl
Ruby
Haskell
JavaScript
19. Automatic Sharding
• Increase or decrease capacity as you go
• Automatic balancing
• Three types of sharding:
hash-based
range-based
tag-aware
20. Query Routing
• Multiple query optimization models
• Many sharding options appropriate for different apps
22. • HighAvailability – Ensure application availability during many
types of failures
• Disaster Recovery –Address the RTO and RPO goals for
business continuity
• Maintenance – Perform upgrades and other maintenance
operations with no application downtime
Availability Considerations
23. Replica Sets
• Replica Set – two or more copies
• “Self-healing” shard
• Addresses many concerns:
- High Availability
- Disaster Recovery
- Maintenance
24. Replica Set Benefits
Business Needs Replica Set Benefits
High Availability Automated failover
Disaster Recovery Hot backups offsite
Maintenance Rolling upgrades
Low Latency Locate data near users
Workload Isolation Read from designated nodes
Data Consistency Tunable Consistency
27. Deployment
• Automated failover
• Tolerates server failures
• Tolerates rack failures
• Number of replicas
defines failure tolerance
Primary – A Primary – B Primary – C
Secondary – A Secondary – ASecondary – B
Secondary – BSecondary – CSecondary – C
37. Monitoring
• CLI and internal status commands
• mongostat; mongotop; db.serverStatus()
• Plug-ins for munin, Nagios, cacti, etc.
• Integration via SNMP to other tools
• MMS
39. • Charts, custom
dashboards and
automated alerting
• Tracks 100+ metrics –
performance, resource
utilization, availability and
response times
• 15,000+ users
MongoDB Management Service
Cloud-based suite of services for managing MongoDB deployments
40. • Backup and restore with
– point-in-time recovery,
– support for sharded clusters
Cloud-based suite of services for managing MongoDB deployments
• MMS On-Prem included with MongoDB Enterprise
(backup coming soon)
MongoDB Management Service