SlideShare a Scribd company logo
León, December 4th 2015
Juan Antonio Roy Couto
basicsbasics
#UniLEMongoDB
Twitter Hashtag MongoDB Basics
2
Who am I?
Juan Antonio Roy Couto
❏ Financial Software Developer
❏ Email: juanroycouto@gmail.com
❏ Twitter: @juanroycouto
❏ Linkedin: https://www.linkedin.com/in/juanroycouto
❏ Slideshare: slideshare.net/juanroycouto
❏ Personal blog: http://www.juanroy.es
❏ Contributor at: http://www.mongodbspain.com
❏ Charrosfera member: http://www.charrosfera.com
MongoDB Basics
3
❏ History
❏ Ranking, Who, Community & Metrics, Drivers
❏ Products
❏ Cluster Overview
❏ Characteristics
❏ Schema Design
❏ How does MongoDB work?
❏ Utilities
❏ Data analytics
❏ Ops Manager
❏ Cloud Manager
Agenda MongoDB Basics
4
History MongoDB Basics
MongoDB
Internet of things
Cloud computing
Wearables
Apps
Smart cities
❏ Non structured data
❏ Enabling Big Data analytics
❏ Faster development
❏ Real time analytics
❏ Better strategic decisions
❏ Reduce costs and time to
market
5
DB Ranking
DB-Engines Ranking & Gartner Magic Quadrant
MongoDB Basics
6
Who? MongoDB Basics
7
Who is using MongoDB?
https://www.mongodb.com/who-uses-mongodb
Who provides MongoDB?
https://www.mongodb.com/partners/list
Community & Metrics
https://www.mongodb.org/community
MongoDB Basics
❏ 10 million downloads
❏ 2,000+ customers (including over one third of the Fortune 100)
❏ 100+ MongoDB User Groups and 40,000 members worldwide
❏ 300,000+ Education Registrations
❏ The only “Challenger” to relational databases in Gartner’s
Operational Database Magic Quadrant
❏ Highest placed non-relational database in DB Engines rankings
8
Drivers
https://docs.mongodb.org/ecosystem/drivers/
MongoDB Basics
9
MongoDB
APP
DRIVER
❏ c
❏ c++
❏ c#
❏ Java
❏ Node.js
❏ Perl
❏ PHP
❏ Python
❏ Motor
❏ Ruby
❏ Scala
❏ Go
❏ Erlang
Products
https://www.mongodb.com/products/overview
MongoDB Basics
10
Enterprise Advanced
❏ 24-365 Support
❏ Ops or Cloud Manager
❏ Advanced Security
❏ On-Demand Training, ...
Professional
❏ Expert Support
❏ Cloud Manager
Cloud Manager
Development
❏ Expert Support
❏ Enterprise Advanced
❏ Personal Training
Ops Manager Consulting Training
Concepts MongoDB Basics
11
MongoDB SQL
Database Database
Collection Table
Document Row
Field Column
Embedding/$lookup Join
Stand-alone MongoDB installation MongoDB Basics
12
MongoDB
Client
DRIVER
Client
DRIVER
Client
DRIVER
SecondarySecondary
Replica Set MongoDB installation MongoDB Basics
13
Primary
Client
DRIVER
Client
DRIVER
Client
DRIVER
Replica Set
Replica Set
Secondary
Secondary
Cluster overview MongoDB Basics
14
Primary
Client
DRIVER
Client
DRIVER
Client
DRIVER
Secondary
Secondary
Primary
Secondary
Secondary
Primary
Secondary
Secondary
Primary
mongos mongos mongos
config server
config server
config server
Shard 0 Shard 1 Shard 2 Shard N-1
Characteristics
http://www.mongodbspain.com/en/2014/08/17/mongodb-characteristics-future/
MongoDB Basics
15
MongoDB Characteristics
Open Source & General Purpose NoSQL Database Document Oriented (JSON) & Schemaless
High Availability (Native Replication) Automatic Failover
Scalability (Auto Sharding & Load Balancing)
TTL Indexes, Capped Collections, Index Intersection, full-text
search, GeoSpatial Queries (2d & 2dsphere)
Security (Authentication, Authorization, Users, Roles) Aggregation Framework & MapReduce
Connectors for:
● Hadoop & Spark (Batch Data Processing)
● BI (Business Inteligence)
Pluggable Storage Engine API (WiredTiger, MMAPv1,
Encrypted,In-memory,...)
Joins ($lookup) Document validation, Compass GUI, ...
JSON Document MongoDB Basics
16
> db.customers.findOne()
{
"_id" : ObjectId("54131863041cd2e6181156ba"),
"first_name" : "Peter",
"last_name" : "Keil",
"address" : {
"street" : "C/Alcalá",
"number" : 123,
"location" : "Madrid",
},
"pets" : [
{
"type" : "Dog",
"breed" : "Airedale Terrier",
"name" : "Linda",
},
{
"type" : "Dog",
"breed" : "Akita",
"name" : "Bruto",
}
]
}
>
SQL Schema Design MongoDB Basics
17
❏ Customer Key
❏ First Name
❏ Last Name
Tables
Customers
❏ Address Key
❏ Customer Key
❏ Street
❏ Number
❏ Location
Addresses
❏ Pet Key
❏ Customer Key
❏ Type
❏ Breed
❏ Name
Pets
MongoDB Schema Design MongoDB Basics
18
Customers Collection
❏ Street
❏ Number
❏ Location
Addresses
❏ Type
❏ Breed
❏ Name
Pets
Customers Info
❏ First Name
❏ Last Name
❏ Type
❏ Breed
❏ Name
> db.customers.findOne()
{
"_id" : ObjectId("54131863041cd2e6181156ba"),
"first_name" : "Peter",
"last_name" : "Keil",
"address" : {
"street" : "C/Alcalá",
"number" : 123,
"location" : "Madrid",
},
"pets" : [
{
"type" : "Dog",
"breed" : "Airedale Terrier",
"name" : "Linda",
},
{
"type" : "Dog",
"breed" : "Akita",
"name" : "Bruto",
}
]
}
>
❏ Replica set
❏ Shards
❏ config servers
❏ mongos
❏ Cluster overview
Cluster overview MongoDB Basics
19
Cluster overview
Replica Set
❏ High Availability
❏ Data Safety
❏ Asynchronous
❏ Automatic Node Recovery
❏ Read Preference
❏ Write Concern
Replica Set
Secondary
Secondary
Primary
MongoDB Basics
20
❏ Scale out
❏ Even data distribution across all of the
shards based on a shard key
❏ A shard key range belongs to only one
shard
❏ More efficient queries (performance)
Cluster overview
Shards
Cluster
Shard 0 Shard 2Shard 1
A-I J-Q R-Z
MongoDB Basics
21
Cluster overview
Config servers
❏ config database
❏ Identical information (consistency check).
❏ Metadata:
❏ Cluster shards list
❏ Data per shard (chunk ranges)
❏ ...
❏ Replica Set (3.2 version)
MongoDB Basics
22
❏ Receives client requests and returns results.
❏ Reads the metadata and sends the query to the necessary
shard/shards.
❏ Does not store data.
❏ Keeps a cache version of the metadata.
Cluster overview
mongos
MongoDB Basics
23
Definitions
❏ Range: Data division based on the values of the shard key.
❏ Chunk: They are not physical data. Chunks are just a logical grouping of
data into ranges (64MB by default).
❏ Split: Chunk division (size > 64MB). No data is moved. Background.
❏ Migration: Chunk movements between shards in order to get an even
distribution. Only one chunk is moved at a time.
❏ Balanced system: The same number of chunks per shard.
❏ Balancer: Checks if a migration is needed and starts it (background).
❏ Pre-split: First data is split, then it is stored.
❏ Tag-based sharding: Used when you want to pin ranges to a specific
shard.
MongoDB Basics
24
How does MongoDB work?
Shard 0 Shard 1 Shard 2 Shard 3
mongos
Client
Migrations
MongoDB Basics
25
Utilities
Backup tools
MongoDB Basics
26
Name Description
mongoexport Generates a JSON or CSV file from a mongodb instance
mongoimport Imports content from a JSON, CSV or TSV export
mongodump Utility for creating a binary export
mongorestore Writes data to a mongodb instance from a binary file
Utilities
Track tools
MongoDB Basics
27
Name Description
mongostat
Provides a quick overview of the status of a running mongod or
mongos instance
mongotop
Provides a method to track the amount of time a mongodb
instance spends reading or writing data.
mongotop provides statistics on a collection level.
By default, returns values each second.
Data analytics MongoDB Basics
28
❏ Internals
❏ Aggregation Framework
❏ Map Reduce
❏ Externals
❏ Spark
❏ Hadoop
❏ Tableau (BI)
❏ ...
OPS Manager MongoDB Basics
29
The best way to run MongoDB within your own data center or public cloud
❏ Monitors 100+ key database and system health metrics
(operations, memory, CPU,...)
❏ Customizable web dashboard
❏ Deploy new clusters (adding shards, replica set members,…)
❏ Alerts
❏ Backup (point-in-time recovery)
❏ Automation (upgrades, scaling,..)
Cloud Manager MongoDB Basics
❏ Simplify complex operational tasks (Reduce tedious manual steps to just a click of a button)
❏ Automated database management (deploy and upgrade with zero downtime)
❏ Continuous real-time backup (Cloud manager is disaster recovery).
❏ Full performance visibility
❏ Alerts
❏ Get the insights you need to make critical decisions fast.
❏ Cloud Manager saves you time, money, and helps you protect the customer experience by
eliminating the guesswork from running MongoDB.
30
❏ High Performance
❏ Flexible
❏ Automatic Scalable
❏ Automatic Failover
❏ High Availability
❏ Reduced Administrative Tasks (replica set, sharding, disaster recovery)
❏ Real Time Analytic Tools (aggregation framework, mapReduce, Hadoop,
Spark, and BI connectors,...)
❏ Easy To Learn
Summary MongoDB Basics
31
Questions?
Questions? MongoDB Basics
32
Thank you for your attention!
MongoDB Basics
León, December 4th 2015
Juan Antonio Roy Couto

More Related Content

What's hot

MongoDB Roadmap
MongoDB RoadmapMongoDB Roadmap
MongoDB RoadmapMongoDB
 
Get expertise with mongo db
Get expertise with mongo dbGet expertise with mongo db
Get expertise with mongo db
Amit Thakkar
 
MongoDB basics & Introduction
MongoDB basics & IntroductionMongoDB basics & Introduction
MongoDB basics & Introduction
Jerwin Roy
 
MongoDB: Comparing WiredTiger In-Memory Engine to Redis
MongoDB: Comparing WiredTiger In-Memory Engine to RedisMongoDB: Comparing WiredTiger In-Memory Engine to Redis
MongoDB: Comparing WiredTiger In-Memory Engine to Redis
Jason Terpko
 
A New MongoDB Sharding Architecture for Higher Availability and Better Resour...
A New MongoDB Sharding Architecture for Higher Availability and Better Resour...A New MongoDB Sharding Architecture for Higher Availability and Better Resour...
A New MongoDB Sharding Architecture for Higher Availability and Better Resour...
leifwalsh
 
MongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster TutorialMongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster Tutorial
Jason Terpko
 
Mongodb sharding
Mongodb shardingMongodb sharding
Mongodb sharding
xiangrong
 
MongoDB - Ekino PHP
MongoDB - Ekino PHPMongoDB - Ekino PHP
MongoDB - Ekino PHP
Florent DENIS
 
Managing Data and Operation Distribution In MongoDB
Managing Data and Operation Distribution In MongoDBManaging Data and Operation Distribution In MongoDB
Managing Data and Operation Distribution In MongoDB
Jason Terpko
 
MongoDB FabLab León
MongoDB FabLab LeónMongoDB FabLab León
MongoDB FabLab León
Juan Antonio Roy Couto
 
Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4 Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4 MongoDB
 
MongoDB for Beginners
MongoDB for BeginnersMongoDB for Beginners
MongoDB for Beginners
Enoch Joshua
 
MongoDB Scalability Best Practices
MongoDB Scalability Best PracticesMongoDB Scalability Best Practices
MongoDB Scalability Best Practices
Jason Terpko
 
MongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo SeattleMongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo Seattle
MongoDB
 
Choosing a Shard key
Choosing a Shard keyChoosing a Shard key
Choosing a Shard key
MongoDB
 
Mongo db basics
Mongo db basicsMongo db basics
Mongo db basics
Claudio Montoya
 
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
 
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
 
Sharding
ShardingSharding
Sharding
MongoDB
 

What's hot (20)

MongoDB Roadmap
MongoDB RoadmapMongoDB Roadmap
MongoDB Roadmap
 
Mondodb
MondodbMondodb
Mondodb
 
Get expertise with mongo db
Get expertise with mongo dbGet expertise with mongo db
Get expertise with mongo db
 
MongoDB basics & Introduction
MongoDB basics & IntroductionMongoDB basics & Introduction
MongoDB basics & Introduction
 
MongoDB: Comparing WiredTiger In-Memory Engine to Redis
MongoDB: Comparing WiredTiger In-Memory Engine to RedisMongoDB: Comparing WiredTiger In-Memory Engine to Redis
MongoDB: Comparing WiredTiger In-Memory Engine to Redis
 
A New MongoDB Sharding Architecture for Higher Availability and Better Resour...
A New MongoDB Sharding Architecture for Higher Availability and Better Resour...A New MongoDB Sharding Architecture for Higher Availability and Better Resour...
A New MongoDB Sharding Architecture for Higher Availability and Better Resour...
 
MongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster TutorialMongoDB - Sharded Cluster Tutorial
MongoDB - Sharded Cluster Tutorial
 
Mongodb sharding
Mongodb shardingMongodb sharding
Mongodb sharding
 
MongoDB - Ekino PHP
MongoDB - Ekino PHPMongoDB - Ekino PHP
MongoDB - Ekino PHP
 
Managing Data and Operation Distribution In MongoDB
Managing Data and Operation Distribution In MongoDBManaging Data and Operation Distribution In MongoDB
Managing Data and Operation Distribution In MongoDB
 
MongoDB FabLab León
MongoDB FabLab LeónMongoDB FabLab León
MongoDB FabLab León
 
Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4 Advanced Sharding Features in MongoDB 2.4
Advanced Sharding Features in MongoDB 2.4
 
MongoDB for Beginners
MongoDB for BeginnersMongoDB for Beginners
MongoDB for Beginners
 
MongoDB Scalability Best Practices
MongoDB Scalability Best PracticesMongoDB Scalability Best Practices
MongoDB Scalability Best Practices
 
MongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo SeattleMongoDB Auto-Sharding at Mongo Seattle
MongoDB Auto-Sharding at Mongo Seattle
 
Choosing a Shard key
Choosing a Shard keyChoosing a Shard key
Choosing a Shard key
 
Mongo db basics
Mongo db basicsMongo db basics
Mongo db basics
 
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 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
 
Sharding
ShardingSharding
Sharding
 

Viewers also liked

Mongo db on azure for developers
Mongo db on azure for developersMongo db on azure for developers
Mongo db on azure for developersMark Greenway
 
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB
 
2010 mongo berlin-shardinginternals (1)
2010 mongo berlin-shardinginternals (1)2010 mongo berlin-shardinginternals (1)
2010 mongo berlin-shardinginternals (1)MongoDB
 
Webinar: Building Your First App with MongoDB and Java
Webinar: Building Your First App with MongoDB and JavaWebinar: Building Your First App with MongoDB and Java
Webinar: Building Your First App with MongoDB and Java
MongoDB
 
Complex Legacy System Archiving/Data Retention with MongoDB and Xquery
Complex Legacy System Archiving/Data Retention with MongoDB and XqueryComplex Legacy System Archiving/Data Retention with MongoDB and Xquery
Complex Legacy System Archiving/Data Retention with MongoDB and Xquery
DATAVERSITY
 
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB AtlasMongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
MongoDB
 
Big Data at Oracle - Strata 2015 San Jose
Big Data at Oracle - Strata 2015 San JoseBig Data at Oracle - Strata 2015 San Jose
Big Data at Oracle - Strata 2015 San Jose
Jeffrey T. Pollock
 
Bhawani prasad data integration-ppt
Bhawani prasad data integration-pptBhawani prasad data integration-ppt
Bhawani prasad data integration-ppt
Bhawani N Prasad
 
MongoDB Launchpad 2016: MongoDB 3.4: Your Database Evolved
MongoDB Launchpad 2016: MongoDB 3.4: Your Database EvolvedMongoDB Launchpad 2016: MongoDB 3.4: Your Database Evolved
MongoDB Launchpad 2016: MongoDB 3.4: Your Database Evolved
MongoDB
 
MongoDB World 2016: Scaling MongoDB with Docker and cGroups
MongoDB World 2016: Scaling MongoDB with Docker and cGroupsMongoDB World 2016: Scaling MongoDB with Docker and cGroups
MongoDB World 2016: Scaling MongoDB with Docker and cGroups
MongoDB
 
Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...
Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...
Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...
Microsoft Décideurs IT
 
MongoDB Schema Design
MongoDB Schema DesignMongoDB Schema Design
MongoDB Schema Design
MongoDB
 
MongoDB Schema Design: Four Real-World Examples
MongoDB Schema Design: Four Real-World ExamplesMongoDB Schema Design: Four Real-World Examples
MongoDB Schema Design: Four Real-World Examples
Mike Friedman
 
MDM Strategy & Roadmap
MDM Strategy & RoadmapMDM Strategy & Roadmap
MDM Strategy & Roadmapvictorlbrown
 
Alphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB Administration
Alphorm
 

Viewers also liked (16)

Mongo db on azure for developers
Mongo db on azure for developersMongo db on azure for developers
Mongo db on azure for developers
 
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
MongoDB Evenings Houston: What's the Scoop on MongoDB and Hadoop? by Jake Ang...
 
2010 mongo berlin-shardinginternals (1)
2010 mongo berlin-shardinginternals (1)2010 mongo berlin-shardinginternals (1)
2010 mongo berlin-shardinginternals (1)
 
Webinar: Building Your First App with MongoDB and Java
Webinar: Building Your First App with MongoDB and JavaWebinar: Building Your First App with MongoDB and Java
Webinar: Building Your First App with MongoDB and Java
 
Complex Legacy System Archiving/Data Retention with MongoDB and Xquery
Complex Legacy System Archiving/Data Retention with MongoDB and XqueryComplex Legacy System Archiving/Data Retention with MongoDB and Xquery
Complex Legacy System Archiving/Data Retention with MongoDB and Xquery
 
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB AtlasMongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
MongoDB Europe 2016 - MongoDB 3.4 preview and introduction to MongoDB Atlas
 
Big Data at Oracle - Strata 2015 San Jose
Big Data at Oracle - Strata 2015 San JoseBig Data at Oracle - Strata 2015 San Jose
Big Data at Oracle - Strata 2015 San Jose
 
Bhawani prasad data integration-ppt
Bhawani prasad data integration-pptBhawani prasad data integration-ppt
Bhawani prasad data integration-ppt
 
Mongo DB
Mongo DBMongo DB
Mongo DB
 
MongoDB Launchpad 2016: MongoDB 3.4: Your Database Evolved
MongoDB Launchpad 2016: MongoDB 3.4: Your Database EvolvedMongoDB Launchpad 2016: MongoDB 3.4: Your Database Evolved
MongoDB Launchpad 2016: MongoDB 3.4: Your Database Evolved
 
MongoDB World 2016: Scaling MongoDB with Docker and cGroups
MongoDB World 2016: Scaling MongoDB with Docker and cGroupsMongoDB World 2016: Scaling MongoDB with Docker and cGroups
MongoDB World 2016: Scaling MongoDB with Docker and cGroups
 
Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...
Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...
Mettre en Oeuvre une Plateforme d'Intégration et de Gestion des Informations ...
 
MongoDB Schema Design
MongoDB Schema DesignMongoDB Schema Design
MongoDB Schema Design
 
MongoDB Schema Design: Four Real-World Examples
MongoDB Schema Design: Four Real-World ExamplesMongoDB Schema Design: Four Real-World Examples
MongoDB Schema Design: Four Real-World Examples
 
MDM Strategy & Roadmap
MDM Strategy & RoadmapMDM Strategy & Roadmap
MDM Strategy & Roadmap
 
Alphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB AdministrationAlphorm.com-Formation MongoDB Administration
Alphorm.com-Formation MongoDB Administration
 

Similar to MongoDB Basics Unileon

MongoDB Workshop Universidad de Huelva
MongoDB Workshop Universidad de HuelvaMongoDB Workshop Universidad de Huelva
MongoDB Workshop Universidad de Huelva
Juan Antonio Roy Couto
 
mongodb tutorial
mongodb tutorialmongodb tutorial
mongodb tutorial
Jaehong Park
 
MongoDB 3.2 - a giant leap. What’s new?
MongoDB 3.2 - a giant leap. What’s new?MongoDB 3.2 - a giant leap. What’s new?
MongoDB 3.2 - a giant leap. What’s new?
Binary Studio
 
Mongodb
MongodbMongodb
Mongodb
Thiago Veiga
 
MongoDB Pros and Cons
MongoDB Pros and ConsMongoDB Pros and Cons
MongoDB Pros and Cons
johnrjenson
 
An introduction to MongoDB by César Trigo #OpenExpoDay 2014
An introduction to MongoDB by César Trigo #OpenExpoDay 2014An introduction to MongoDB by César Trigo #OpenExpoDay 2014
An introduction to MongoDB by César Trigo #OpenExpoDay 2014
OpenExpoES
 
An introduction to MongoDB
An introduction to MongoDBAn introduction to MongoDB
An introduction to MongoDB
César Trigo
 
MongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and Implications
MongoDB
 
MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB
 
MongoDB
MongoDBMongoDB
MongoDB
wiTTyMinds1
 
MongoDB Knowledge Shareing
MongoDB Knowledge ShareingMongoDB Knowledge Shareing
MongoDB Knowledge ShareingPhilip Zhong
 
Conceptos básicos. Seminario web 6: Despliegue de producción
Conceptos básicos. Seminario web 6: Despliegue de producciónConceptos básicos. Seminario web 6: Despliegue de producción
Conceptos básicos. Seminario web 6: Despliegue de producción
MongoDB
 
How sitecore depends on mongo db for scalability and performance, and what it...
How sitecore depends on mongo db for scalability and performance, and what it...How sitecore depends on mongo db for scalability and performance, and what it...
How sitecore depends on mongo db for scalability and performance, and what it...
Antonios Giannopoulos
 
MongoDB Sharding Webinar 2014
MongoDB Sharding Webinar 2014MongoDB Sharding Webinar 2014
MongoDB Sharding Webinar 2014
Dylan Tong
 
MongoDB Europe 2016 - Big Data meets Big Compute
MongoDB Europe 2016 - Big Data meets Big ComputeMongoDB Europe 2016 - Big Data meets Big Compute
MongoDB Europe 2016 - Big Data meets Big Compute
MongoDB
 
What is the significance of MongoDB and what are its usages.docx
What is the significance of MongoDB and what are its usages.docxWhat is the significance of MongoDB and what are its usages.docx
What is the significance of MongoDB and what are its usages.docx
kzayra69
 
Dev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDBDev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDB
MongoDB
 
Architecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDBArchitecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDB
Matthew Kalan
 
Mongo db transcript
Mongo db transcriptMongo db transcript
Mongo db transcript
foliba
 

Similar to MongoDB Basics Unileon (20)

MongoDB Workshop Universidad de Huelva
MongoDB Workshop Universidad de HuelvaMongoDB Workshop Universidad de Huelva
MongoDB Workshop Universidad de Huelva
 
mongodb tutorial
mongodb tutorialmongodb tutorial
mongodb tutorial
 
MongoDB 3.2 - a giant leap. What’s new?
MongoDB 3.2 - a giant leap. What’s new?MongoDB 3.2 - a giant leap. What’s new?
MongoDB 3.2 - a giant leap. What’s new?
 
Mongodb
MongodbMongodb
Mongodb
 
MongoDB Pros and Cons
MongoDB Pros and ConsMongoDB Pros and Cons
MongoDB Pros and Cons
 
An introduction to MongoDB by César Trigo #OpenExpoDay 2014
An introduction to MongoDB by César Trigo #OpenExpoDay 2014An introduction to MongoDB by César Trigo #OpenExpoDay 2014
An introduction to MongoDB by César Trigo #OpenExpoDay 2014
 
An introduction to MongoDB
An introduction to MongoDBAn introduction to MongoDB
An introduction to MongoDB
 
MongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and Implications
 
MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data Presentation
 
MongoDB
MongoDBMongoDB
MongoDB
 
MongoDB Knowledge Shareing
MongoDB Knowledge ShareingMongoDB Knowledge Shareing
MongoDB Knowledge Shareing
 
Conceptos básicos. Seminario web 6: Despliegue de producción
Conceptos básicos. Seminario web 6: Despliegue de producciónConceptos básicos. Seminario web 6: Despliegue de producción
Conceptos básicos. Seminario web 6: Despliegue de producción
 
How sitecore depends on mongo db for scalability and performance, and what it...
How sitecore depends on mongo db for scalability and performance, and what it...How sitecore depends on mongo db for scalability and performance, and what it...
How sitecore depends on mongo db for scalability and performance, and what it...
 
MongoDB Sharding Webinar 2014
MongoDB Sharding Webinar 2014MongoDB Sharding Webinar 2014
MongoDB Sharding Webinar 2014
 
MongoDB Europe 2016 - Big Data meets Big Compute
MongoDB Europe 2016 - Big Data meets Big ComputeMongoDB Europe 2016 - Big Data meets Big Compute
MongoDB Europe 2016 - Big Data meets Big Compute
 
Mongodb (1)
Mongodb (1)Mongodb (1)
Mongodb (1)
 
What is the significance of MongoDB and what are its usages.docx
What is the significance of MongoDB and what are its usages.docxWhat is the significance of MongoDB and what are its usages.docx
What is the significance of MongoDB and what are its usages.docx
 
Dev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDBDev Jumpstart: Build Your First App with MongoDB
Dev Jumpstart: Build Your First App with MongoDB
 
Architecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDBArchitecting Wide-ranging Analytical Solutions with MongoDB
Architecting Wide-ranging Analytical Solutions with MongoDB
 
Mongo db transcript
Mongo db transcriptMongo db transcript
Mongo db transcript
 

Recently uploaded

原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
u86oixdj
 
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
NABLAS株式会社
 
The Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series DatabaseThe Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series Database
javier ramirez
 
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
Timothy Spann
 
The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...
jerlynmaetalle
 
Nanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdfNanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdf
eddie19851
 
Analysis insight about a Flyball dog competition team's performance
Analysis insight about a Flyball dog competition team's performanceAnalysis insight about a Flyball dog competition team's performance
Analysis insight about a Flyball dog competition team's performance
roli9797
 
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdfCh03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
haila53
 
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
slg6lamcq
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
axoqas
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
Subhajit Sahu
 
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
slg6lamcq
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
John Andrews
 
Data_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptx
Data_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptxData_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptx
Data_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptx
AnirbanRoy608946
 
Influence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business PlanInfluence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business Plan
jerlynmaetalle
 
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
dwreak4tg
 
Unleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdf
Unleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdfUnleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdf
Unleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdf
Enterprise Wired
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Subhajit Sahu
 
Machine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptxMachine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptx
balafet
 
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
v3tuleee
 

Recently uploaded (20)

原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
原版制作(swinburne毕业证书)斯威本科技大学毕业证毕业完成信一模一样
 
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
 
The Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series DatabaseThe Building Blocks of QuestDB, a Time Series Database
The Building Blocks of QuestDB, a Time Series Database
 
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
06-04-2024 - NYC Tech Week - Discussion on Vector Databases, Unstructured Dat...
 
The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...The affect of service quality and online reviews on customer loyalty in the E...
The affect of service quality and online reviews on customer loyalty in the E...
 
Nanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdfNanandann Nilekani's ppt On India's .pdf
Nanandann Nilekani's ppt On India's .pdf
 
Analysis insight about a Flyball dog competition team's performance
Analysis insight about a Flyball dog competition team's performanceAnalysis insight about a Flyball dog competition team's performance
Analysis insight about a Flyball dog competition team's performance
 
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdfCh03-Managing the Object-Oriented Information Systems Project a.pdf
Ch03-Managing the Object-Oriented Information Systems Project a.pdf
 
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
一比一原版(Adelaide毕业证书)阿德莱德大学毕业证如何办理
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
 
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
一比一原版(UniSA毕业证书)南澳大学毕业证如何办理
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
 
Data_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptx
Data_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptxData_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptx
Data_and_Analytics_Essentials_Architect_an_Analytics_Platform.pptx
 
Influence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business PlanInfluence of Marketing Strategy and Market Competition on Business Plan
Influence of Marketing Strategy and Market Competition on Business Plan
 
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
一比一原版(BCU毕业证书)伯明翰城市大学毕业证如何办理
 
Unleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdf
Unleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdfUnleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdf
Unleashing the Power of Data_ Choosing a Trusted Analytics Platform.pdf
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
 
Machine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptxMachine learning and optimization techniques for electrical drives.pptx
Machine learning and optimization techniques for electrical drives.pptx
 
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理一比一原版(UofS毕业证书)萨省大学毕业证如何办理
一比一原版(UofS毕业证书)萨省大学毕业证如何办理
 

MongoDB Basics Unileon

  • 1. León, December 4th 2015 Juan Antonio Roy Couto basicsbasics
  • 3. Who am I? Juan Antonio Roy Couto ❏ Financial Software Developer ❏ Email: juanroycouto@gmail.com ❏ Twitter: @juanroycouto ❏ Linkedin: https://www.linkedin.com/in/juanroycouto ❏ Slideshare: slideshare.net/juanroycouto ❏ Personal blog: http://www.juanroy.es ❏ Contributor at: http://www.mongodbspain.com ❏ Charrosfera member: http://www.charrosfera.com MongoDB Basics 3
  • 4. ❏ History ❏ Ranking, Who, Community & Metrics, Drivers ❏ Products ❏ Cluster Overview ❏ Characteristics ❏ Schema Design ❏ How does MongoDB work? ❏ Utilities ❏ Data analytics ❏ Ops Manager ❏ Cloud Manager Agenda MongoDB Basics 4
  • 5. History MongoDB Basics MongoDB Internet of things Cloud computing Wearables Apps Smart cities ❏ Non structured data ❏ Enabling Big Data analytics ❏ Faster development ❏ Real time analytics ❏ Better strategic decisions ❏ Reduce costs and time to market 5
  • 6. DB Ranking DB-Engines Ranking & Gartner Magic Quadrant MongoDB Basics 6
  • 7. Who? MongoDB Basics 7 Who is using MongoDB? https://www.mongodb.com/who-uses-mongodb Who provides MongoDB? https://www.mongodb.com/partners/list
  • 8. Community & Metrics https://www.mongodb.org/community MongoDB Basics ❏ 10 million downloads ❏ 2,000+ customers (including over one third of the Fortune 100) ❏ 100+ MongoDB User Groups and 40,000 members worldwide ❏ 300,000+ Education Registrations ❏ The only “Challenger” to relational databases in Gartner’s Operational Database Magic Quadrant ❏ Highest placed non-relational database in DB Engines rankings 8
  • 9. Drivers https://docs.mongodb.org/ecosystem/drivers/ MongoDB Basics 9 MongoDB APP DRIVER ❏ c ❏ c++ ❏ c# ❏ Java ❏ Node.js ❏ Perl ❏ PHP ❏ Python ❏ Motor ❏ Ruby ❏ Scala ❏ Go ❏ Erlang
  • 10. Products https://www.mongodb.com/products/overview MongoDB Basics 10 Enterprise Advanced ❏ 24-365 Support ❏ Ops or Cloud Manager ❏ Advanced Security ❏ On-Demand Training, ... Professional ❏ Expert Support ❏ Cloud Manager Cloud Manager Development ❏ Expert Support ❏ Enterprise Advanced ❏ Personal Training Ops Manager Consulting Training
  • 11. Concepts MongoDB Basics 11 MongoDB SQL Database Database Collection Table Document Row Field Column Embedding/$lookup Join
  • 12. Stand-alone MongoDB installation MongoDB Basics 12 MongoDB Client DRIVER Client DRIVER Client DRIVER
  • 13. SecondarySecondary Replica Set MongoDB installation MongoDB Basics 13 Primary Client DRIVER Client DRIVER Client DRIVER Replica Set
  • 14. Replica Set Secondary Secondary Cluster overview MongoDB Basics 14 Primary Client DRIVER Client DRIVER Client DRIVER Secondary Secondary Primary Secondary Secondary Primary Secondary Secondary Primary mongos mongos mongos config server config server config server Shard 0 Shard 1 Shard 2 Shard N-1
  • 15. Characteristics http://www.mongodbspain.com/en/2014/08/17/mongodb-characteristics-future/ MongoDB Basics 15 MongoDB Characteristics Open Source & General Purpose NoSQL Database Document Oriented (JSON) & Schemaless High Availability (Native Replication) Automatic Failover Scalability (Auto Sharding & Load Balancing) TTL Indexes, Capped Collections, Index Intersection, full-text search, GeoSpatial Queries (2d & 2dsphere) Security (Authentication, Authorization, Users, Roles) Aggregation Framework & MapReduce Connectors for: ● Hadoop & Spark (Batch Data Processing) ● BI (Business Inteligence) Pluggable Storage Engine API (WiredTiger, MMAPv1, Encrypted,In-memory,...) Joins ($lookup) Document validation, Compass GUI, ...
  • 16. JSON Document MongoDB Basics 16 > db.customers.findOne() { "_id" : ObjectId("54131863041cd2e6181156ba"), "first_name" : "Peter", "last_name" : "Keil", "address" : { "street" : "C/Alcalá", "number" : 123, "location" : "Madrid", }, "pets" : [ { "type" : "Dog", "breed" : "Airedale Terrier", "name" : "Linda", }, { "type" : "Dog", "breed" : "Akita", "name" : "Bruto", } ] } >
  • 17. SQL Schema Design MongoDB Basics 17 ❏ Customer Key ❏ First Name ❏ Last Name Tables Customers ❏ Address Key ❏ Customer Key ❏ Street ❏ Number ❏ Location Addresses ❏ Pet Key ❏ Customer Key ❏ Type ❏ Breed ❏ Name Pets
  • 18. MongoDB Schema Design MongoDB Basics 18 Customers Collection ❏ Street ❏ Number ❏ Location Addresses ❏ Type ❏ Breed ❏ Name Pets Customers Info ❏ First Name ❏ Last Name ❏ Type ❏ Breed ❏ Name > db.customers.findOne() { "_id" : ObjectId("54131863041cd2e6181156ba"), "first_name" : "Peter", "last_name" : "Keil", "address" : { "street" : "C/Alcalá", "number" : 123, "location" : "Madrid", }, "pets" : [ { "type" : "Dog", "breed" : "Airedale Terrier", "name" : "Linda", }, { "type" : "Dog", "breed" : "Akita", "name" : "Bruto", } ] } >
  • 19. ❏ Replica set ❏ Shards ❏ config servers ❏ mongos ❏ Cluster overview Cluster overview MongoDB Basics 19
  • 20. Cluster overview Replica Set ❏ High Availability ❏ Data Safety ❏ Asynchronous ❏ Automatic Node Recovery ❏ Read Preference ❏ Write Concern Replica Set Secondary Secondary Primary MongoDB Basics 20
  • 21. ❏ Scale out ❏ Even data distribution across all of the shards based on a shard key ❏ A shard key range belongs to only one shard ❏ More efficient queries (performance) Cluster overview Shards Cluster Shard 0 Shard 2Shard 1 A-I J-Q R-Z MongoDB Basics 21
  • 22. Cluster overview Config servers ❏ config database ❏ Identical information (consistency check). ❏ Metadata: ❏ Cluster shards list ❏ Data per shard (chunk ranges) ❏ ... ❏ Replica Set (3.2 version) MongoDB Basics 22
  • 23. ❏ Receives client requests and returns results. ❏ Reads the metadata and sends the query to the necessary shard/shards. ❏ Does not store data. ❏ Keeps a cache version of the metadata. Cluster overview mongos MongoDB Basics 23
  • 24. Definitions ❏ Range: Data division based on the values of the shard key. ❏ Chunk: They are not physical data. Chunks are just a logical grouping of data into ranges (64MB by default). ❏ Split: Chunk division (size > 64MB). No data is moved. Background. ❏ Migration: Chunk movements between shards in order to get an even distribution. Only one chunk is moved at a time. ❏ Balanced system: The same number of chunks per shard. ❏ Balancer: Checks if a migration is needed and starts it (background). ❏ Pre-split: First data is split, then it is stored. ❏ Tag-based sharding: Used when you want to pin ranges to a specific shard. MongoDB Basics 24
  • 25. How does MongoDB work? Shard 0 Shard 1 Shard 2 Shard 3 mongos Client Migrations MongoDB Basics 25
  • 26. Utilities Backup tools MongoDB Basics 26 Name Description mongoexport Generates a JSON or CSV file from a mongodb instance mongoimport Imports content from a JSON, CSV or TSV export mongodump Utility for creating a binary export mongorestore Writes data to a mongodb instance from a binary file
  • 27. Utilities Track tools MongoDB Basics 27 Name Description mongostat Provides a quick overview of the status of a running mongod or mongos instance mongotop Provides a method to track the amount of time a mongodb instance spends reading or writing data. mongotop provides statistics on a collection level. By default, returns values each second.
  • 28. Data analytics MongoDB Basics 28 ❏ Internals ❏ Aggregation Framework ❏ Map Reduce ❏ Externals ❏ Spark ❏ Hadoop ❏ Tableau (BI) ❏ ...
  • 29. OPS Manager MongoDB Basics 29 The best way to run MongoDB within your own data center or public cloud ❏ Monitors 100+ key database and system health metrics (operations, memory, CPU,...) ❏ Customizable web dashboard ❏ Deploy new clusters (adding shards, replica set members,…) ❏ Alerts ❏ Backup (point-in-time recovery) ❏ Automation (upgrades, scaling,..)
  • 30. Cloud Manager MongoDB Basics ❏ Simplify complex operational tasks (Reduce tedious manual steps to just a click of a button) ❏ Automated database management (deploy and upgrade with zero downtime) ❏ Continuous real-time backup (Cloud manager is disaster recovery). ❏ Full performance visibility ❏ Alerts ❏ Get the insights you need to make critical decisions fast. ❏ Cloud Manager saves you time, money, and helps you protect the customer experience by eliminating the guesswork from running MongoDB. 30
  • 31. ❏ High Performance ❏ Flexible ❏ Automatic Scalable ❏ Automatic Failover ❏ High Availability ❏ Reduced Administrative Tasks (replica set, sharding, disaster recovery) ❏ Real Time Analytic Tools (aggregation framework, mapReduce, Hadoop, Spark, and BI connectors,...) ❏ Easy To Learn Summary MongoDB Basics 31
  • 33. Thank you for your attention! MongoDB Basics León, December 4th 2015 Juan Antonio Roy Couto