www.edureka.co/r-for-analytics
www.edureka.co/mongodb
3 Scenarios When to use MongoDB!
Slide 2Slide 2Slide 2 www.edureka.co/mongodb
Today we will take you through the following:
 NoSQL vs SQL
 CAP Theorem
 MongoDB Unleashed
 MongoDB Market Demand
 Companies using MongoDB
 3 Scenarios where MongoDB suits best
Agenda
(Hands ON)
Slide 3Slide 3Slide 3 www.edureka.co/mongodb
NoSQL vs SQL
Slide 4Slide 4Slide 4 www.edureka.co/mongodb
Table based
Document based
Key-value pairs etc..
Predefined schemaDynamic schema
Vertically scalableHorizontally scalable
Good fit for the complex queryNot good fit for complex queries
Emphasizes on ACID properties
( Atomicity, consistency, isolation and durability)
Follows the CAP theorem
( consistency, availability and partition tolerance )
NoSQL SQL
NoSQL vs SQL
Slide 5Slide 5Slide 5 www.edureka.co/mongodb
CAP Theorem
Slide 6Slide 6Slide 6 www.edureka.co/mongodb
It is impossible for a distributed computer system to simultaneously provide all three of the following guarantees :
Consistency (all nodes see the same data at the same time)
Availability (a guarantee that every request receives a response about whether it succeeded or failed)
Partition tolerance (the system continues to operate despite arbitrary partitioning due to network failures)
CAP Theorem
Slide 7Slide 7Slide 7 www.edureka.co/mongodb
MongoDB and its Top Features
Slide 8Slide 8Slide 8 www.edureka.co/mongodb
MongoDB
free and open-
source software
cross-platform
document-
oriented
database
JSON-like
documents with
dynamic schemas
What is MongoDB
Slide 9Slide 9Slide 9 www.edureka.co/mongodb
Document-Oriented
• Store the business subject in the minimal number of documents
e.g. instead of storing title and author information in two distinct relational
structures, title, author, and other title-related information can all be stored in a
single document called Book
Ad hoc Queries
• MongoDB supports search by field, range queries, regular expression searches
• Queries can return specific fields of documents and also include user-defined
JavaScript functions
Indexing
• Any field in a MongoDB document can be indexed
• Secondary indices are also available
MongoDB Features
Slide 10Slide 10Slide 10 www.edureka.co/mongodb
Document-Oriented
• Store the business subject in the minimal number of documents
e.g. instead of storing title and author information in two distinct relational
structures, title, author, and other title-related information can all be stored in a
single document called Book
Ad hoc Queries
• MongoDB supports search by field, range queries, regular expression searches
• Queries can return specific fields of documents and also include user-defined
JavaScript functions
Indexing
• Any field in a MongoDB document can be indexed
• Secondary indices are also available
MongoDB Features
Slide 11Slide 11Slide 11 www.edureka.co/mongodb
Document-Oriented
• Store the business subject in the minimal number of documents
e.g. instead of storing title and author information in two distinct relational
structures, title, author, and other title-related information can all be stored in a
single document called Book
Ad hoc Queries
• MongoDB supports search by field, range queries, regular expression searches
• Queries can return specific fields of documents and also include user-defined
JavaScript functions
Indexing
• Any field in a MongoDB document can be indexed
• Secondary indices are also available
MongoDB Features
Slide 12Slide 12Slide 12 www.edureka.co/mongodb
Replication
• MongoDB provides high availability with replica sets i.e.
• A replica set consists of two or more copies of the data
• Each replica set member may act in the role of primary or secondary replica at any
time
• When a primary replica fails, the secondary should become the primary
Load Balancing
• MongoDB scales horizontally using sharding i.e.
• The user chooses a shard key, which determines how the data in a collection will
be distributed
• The data is split into ranges (based on the shard key) and distributed across
multiple shards
File storage
• MongoDB can be used as a file system, taking advantage of multiple machines for
storing files
• Exposes functions for file manipulation and content to developers
• Load-balanced and fault-tolerant system
MongoDB Features
Slide 13Slide 13Slide 13 www.edureka.co/mongodb
Replication
• MongoDB provides high availability with replica sets i.e.
• A replica set consists of two or more copies of the data
• Each replica set member may act in the role of primary or secondary replica at any
time
• When a primary replica fails, the secondary should become the primary
Load Balancing
• MongoDB scales horizontally using sharding i.e.
• The user chooses a shard key, which determines how the data in a collection will
be distributed
• The data is split into ranges (based on the shard key) and distributed across
multiple shards
File storage
• MongoDB can be used as a file system, taking advantage of multiple machines for
storing files
• Exposes functions for file manipulation and content to developers
• Load-balanced and fault-tolerant system
MongoDB Features
Slide 14Slide 14Slide 14 www.edureka.co/mongodb
Replication
• MongoDB provides high availability with replica sets i.e.
• A replica set consists of two or more copies of the data
• Each replica set member may act in the role of primary or secondary replica at any
time
• When a primary replica fails, the secondary should become the primary
Load Balancing
• MongoDB scales horizontally using sharding i.e.
• The user chooses a shard key, which determines how the data in a collection will
be distributed
• The data is split into ranges (based on the shard key) and distributed across
multiple shards
File storage
• MongoDB can be used as a file system, taking advantage of multiple machines for
storing files
• Exposes functions for file manipulation and content to developers
• Load-balanced and fault-tolerant system
MongoDB Features
Slide 15Slide 15Slide 15 www.edureka.co/mongodb
Aggregation
• MapReduce can be used for batch processing of data and aggregation
operations
• The aggregation framework enables users to obtain the kind of results for which
the SQL GROUP BY clause is used
Server-side JavaScript
execution
• JavaScript can be used in queries, aggregation functions (such as MapReduce)
and sent directly to the database to be executed
Capped Collections
• Supports fixed-size collections called capped collections
• This type of collection maintains insertion order and once the specified size has
been reached, behaves like a circular queue
MongoDB Features
Slide 16Slide 16Slide 16 www.edureka.co/mongodb
Aggregation
• MapReduce can be used for batch processing of data and aggregation
operations
• The aggregation framework enables users to obtain the kind of results for which
the SQL GROUP BY clause is used
Server-side JavaScript
execution
• JavaScript can be used in queries, aggregation functions (such as MapReduce)
and sent directly to the database to be executed
Capped Collections
• Supports fixed-size collections called capped collections
• This type of collection maintains insertion order and once the specified size has
been reached, behaves like a circular queue
MongoDB Features
Slide 17Slide 17Slide 17 www.edureka.co/mongodb
Aggregation
• MapReduce can be used for batch processing of data and aggregation
operations
• The aggregation framework enables users to obtain the kind of results for which
the SQL GROUP BY clause is used
Server-side JavaScript
execution
• JavaScript can be used in queries, aggregation functions (such as MapReduce)
and sent directly to the database to be executed
Capped Collections
• Supports fixed-size collections called capped collections
• This type of collection maintains insertion order and once the specified size has
been reached, behaves like a circular queue
MongoDB Features
Slide 18Slide 18Slide 18 www.edureka.co/mongodb
MongoDB RDBMS
Source : Google Trends
Interest over time
MongoDB is searched more over traditional RDBMS :
MongoDB Search Trend
Slide 19Slide 19Slide 19 www.edureka.co/mongodb
As per indeed.com and linkedin there are most job posting for MongoDb and the skill index is continuously growing :
MongoDB Job And Market Trend
Source : linkedin
Slide 20Slide 20Slide 20 www.edureka.co/mongodb
Companies using MongoDB
Slide 21Slide 21Slide 21 www.edureka.co/mongodb
The Weather Channel turned to MongoDB to get killer features out to users quickly
MongoDB Application
Slide 22Slide 22Slide 22 www.edureka.co/mongodb
Otto Reinvents E-commerce Personalization for More than 2 Million Visitors Per Day with MongoDB
MongoDB Application
Slide 23Slide 23Slide 23 www.edureka.co/mongodb
Rethinking The Customer Experience at Metlife: From Stalled to Success in Three Months with MongoDB
MongoDB Application
Slide 24Slide 24Slide 24 www.edureka.co/mongodb
ADP: Meeting Mobile Demands, One Innovative App at a Time
MongoDB Application
Slide 25Slide 25Slide 25 www.edureka.co/mongodb
3 Scenarios How Expedia uses
MongoDB
Slide 26Slide 26Slide 26 www.edureka.co/mongodb
Scenario 1
When you need your results in real time inspite of changing schema
MongoDB’s flexible document store and simple horizontal scale-out make it possible for Expedia to
create a feature that gives every user a relevant, seamless shopping experience.
That collects highly-dynamic customer information in real-time and presents personalized offers on the fly.
Slide 27Slide 27Slide 27 www.edureka.co/mongodb
Scenario 2
When you need flexible data model
MongoDB’s flexible data model makes it easy to store any combination of city pairs, dates and destinations.
Expedia can even continue shopping for someone after that customer has closed out a session. When the
customer returns, all the latest pricing and availability for their searches are displayed side by side on their
Scratchpad.
Slide 28Slide 28Slide 28 www.edureka.co/mongodb
Scenario 3
When you need indexing
MongoDB's rich indexes are used to power analytics that make personalized suggestions to users while they
shop. Expedia can also analyze patterns to pinpoint trends that offer a better understanding of what customers
are looking for.
For a consumer, personalization saves time, saves money, and gets them one step closer to what they’re really
after i.e. a cool vacation.
For Expedia, real-time personalization powered by MongoDB means customer loyalty, increased conversions
and a competitive edge that goes straight to the bottom line.
Questions
Slide 29
Slide 30
Your feedback is vital for us, be it a compliment, a suggestion or a complaint. It helps us to make your
experience better!
Please spare few minutes to take the survey after the webinar.
Survey
3 scenarios when to use MongoDB!

3 scenarios when to use MongoDB!

  • 1.
  • 2.
    Slide 2Slide 2Slide2 www.edureka.co/mongodb Today we will take you through the following:  NoSQL vs SQL  CAP Theorem  MongoDB Unleashed  MongoDB Market Demand  Companies using MongoDB  3 Scenarios where MongoDB suits best Agenda (Hands ON)
  • 3.
    Slide 3Slide 3Slide3 www.edureka.co/mongodb NoSQL vs SQL
  • 4.
    Slide 4Slide 4Slide4 www.edureka.co/mongodb Table based Document based Key-value pairs etc.. Predefined schemaDynamic schema Vertically scalableHorizontally scalable Good fit for the complex queryNot good fit for complex queries Emphasizes on ACID properties ( Atomicity, consistency, isolation and durability) Follows the CAP theorem ( consistency, availability and partition tolerance ) NoSQL SQL NoSQL vs SQL
  • 5.
    Slide 5Slide 5Slide5 www.edureka.co/mongodb CAP Theorem
  • 6.
    Slide 6Slide 6Slide6 www.edureka.co/mongodb It is impossible for a distributed computer system to simultaneously provide all three of the following guarantees : Consistency (all nodes see the same data at the same time) Availability (a guarantee that every request receives a response about whether it succeeded or failed) Partition tolerance (the system continues to operate despite arbitrary partitioning due to network failures) CAP Theorem
  • 7.
    Slide 7Slide 7Slide7 www.edureka.co/mongodb MongoDB and its Top Features
  • 8.
    Slide 8Slide 8Slide8 www.edureka.co/mongodb MongoDB free and open- source software cross-platform document- oriented database JSON-like documents with dynamic schemas What is MongoDB
  • 9.
    Slide 9Slide 9Slide9 www.edureka.co/mongodb Document-Oriented • Store the business subject in the minimal number of documents e.g. instead of storing title and author information in two distinct relational structures, title, author, and other title-related information can all be stored in a single document called Book Ad hoc Queries • MongoDB supports search by field, range queries, regular expression searches • Queries can return specific fields of documents and also include user-defined JavaScript functions Indexing • Any field in a MongoDB document can be indexed • Secondary indices are also available MongoDB Features
  • 10.
    Slide 10Slide 10Slide10 www.edureka.co/mongodb Document-Oriented • Store the business subject in the minimal number of documents e.g. instead of storing title and author information in two distinct relational structures, title, author, and other title-related information can all be stored in a single document called Book Ad hoc Queries • MongoDB supports search by field, range queries, regular expression searches • Queries can return specific fields of documents and also include user-defined JavaScript functions Indexing • Any field in a MongoDB document can be indexed • Secondary indices are also available MongoDB Features
  • 11.
    Slide 11Slide 11Slide11 www.edureka.co/mongodb Document-Oriented • Store the business subject in the minimal number of documents e.g. instead of storing title and author information in two distinct relational structures, title, author, and other title-related information can all be stored in a single document called Book Ad hoc Queries • MongoDB supports search by field, range queries, regular expression searches • Queries can return specific fields of documents and also include user-defined JavaScript functions Indexing • Any field in a MongoDB document can be indexed • Secondary indices are also available MongoDB Features
  • 12.
    Slide 12Slide 12Slide12 www.edureka.co/mongodb Replication • MongoDB provides high availability with replica sets i.e. • A replica set consists of two or more copies of the data • Each replica set member may act in the role of primary or secondary replica at any time • When a primary replica fails, the secondary should become the primary Load Balancing • MongoDB scales horizontally using sharding i.e. • The user chooses a shard key, which determines how the data in a collection will be distributed • The data is split into ranges (based on the shard key) and distributed across multiple shards File storage • MongoDB can be used as a file system, taking advantage of multiple machines for storing files • Exposes functions for file manipulation and content to developers • Load-balanced and fault-tolerant system MongoDB Features
  • 13.
    Slide 13Slide 13Slide13 www.edureka.co/mongodb Replication • MongoDB provides high availability with replica sets i.e. • A replica set consists of two or more copies of the data • Each replica set member may act in the role of primary or secondary replica at any time • When a primary replica fails, the secondary should become the primary Load Balancing • MongoDB scales horizontally using sharding i.e. • The user chooses a shard key, which determines how the data in a collection will be distributed • The data is split into ranges (based on the shard key) and distributed across multiple shards File storage • MongoDB can be used as a file system, taking advantage of multiple machines for storing files • Exposes functions for file manipulation and content to developers • Load-balanced and fault-tolerant system MongoDB Features
  • 14.
    Slide 14Slide 14Slide14 www.edureka.co/mongodb Replication • MongoDB provides high availability with replica sets i.e. • A replica set consists of two or more copies of the data • Each replica set member may act in the role of primary or secondary replica at any time • When a primary replica fails, the secondary should become the primary Load Balancing • MongoDB scales horizontally using sharding i.e. • The user chooses a shard key, which determines how the data in a collection will be distributed • The data is split into ranges (based on the shard key) and distributed across multiple shards File storage • MongoDB can be used as a file system, taking advantage of multiple machines for storing files • Exposes functions for file manipulation and content to developers • Load-balanced and fault-tolerant system MongoDB Features
  • 15.
    Slide 15Slide 15Slide15 www.edureka.co/mongodb Aggregation • MapReduce can be used for batch processing of data and aggregation operations • The aggregation framework enables users to obtain the kind of results for which the SQL GROUP BY clause is used Server-side JavaScript execution • JavaScript can be used in queries, aggregation functions (such as MapReduce) and sent directly to the database to be executed Capped Collections • Supports fixed-size collections called capped collections • This type of collection maintains insertion order and once the specified size has been reached, behaves like a circular queue MongoDB Features
  • 16.
    Slide 16Slide 16Slide16 www.edureka.co/mongodb Aggregation • MapReduce can be used for batch processing of data and aggregation operations • The aggregation framework enables users to obtain the kind of results for which the SQL GROUP BY clause is used Server-side JavaScript execution • JavaScript can be used in queries, aggregation functions (such as MapReduce) and sent directly to the database to be executed Capped Collections • Supports fixed-size collections called capped collections • This type of collection maintains insertion order and once the specified size has been reached, behaves like a circular queue MongoDB Features
  • 17.
    Slide 17Slide 17Slide17 www.edureka.co/mongodb Aggregation • MapReduce can be used for batch processing of data and aggregation operations • The aggregation framework enables users to obtain the kind of results for which the SQL GROUP BY clause is used Server-side JavaScript execution • JavaScript can be used in queries, aggregation functions (such as MapReduce) and sent directly to the database to be executed Capped Collections • Supports fixed-size collections called capped collections • This type of collection maintains insertion order and once the specified size has been reached, behaves like a circular queue MongoDB Features
  • 18.
    Slide 18Slide 18Slide18 www.edureka.co/mongodb MongoDB RDBMS Source : Google Trends Interest over time MongoDB is searched more over traditional RDBMS : MongoDB Search Trend
  • 19.
    Slide 19Slide 19Slide19 www.edureka.co/mongodb As per indeed.com and linkedin there are most job posting for MongoDb and the skill index is continuously growing : MongoDB Job And Market Trend Source : linkedin
  • 20.
    Slide 20Slide 20Slide20 www.edureka.co/mongodb Companies using MongoDB
  • 21.
    Slide 21Slide 21Slide21 www.edureka.co/mongodb The Weather Channel turned to MongoDB to get killer features out to users quickly MongoDB Application
  • 22.
    Slide 22Slide 22Slide22 www.edureka.co/mongodb Otto Reinvents E-commerce Personalization for More than 2 Million Visitors Per Day with MongoDB MongoDB Application
  • 23.
    Slide 23Slide 23Slide23 www.edureka.co/mongodb Rethinking The Customer Experience at Metlife: From Stalled to Success in Three Months with MongoDB MongoDB Application
  • 24.
    Slide 24Slide 24Slide24 www.edureka.co/mongodb ADP: Meeting Mobile Demands, One Innovative App at a Time MongoDB Application
  • 25.
    Slide 25Slide 25Slide25 www.edureka.co/mongodb 3 Scenarios How Expedia uses MongoDB
  • 26.
    Slide 26Slide 26Slide26 www.edureka.co/mongodb Scenario 1 When you need your results in real time inspite of changing schema MongoDB’s flexible document store and simple horizontal scale-out make it possible for Expedia to create a feature that gives every user a relevant, seamless shopping experience. That collects highly-dynamic customer information in real-time and presents personalized offers on the fly.
  • 27.
    Slide 27Slide 27Slide27 www.edureka.co/mongodb Scenario 2 When you need flexible data model MongoDB’s flexible data model makes it easy to store any combination of city pairs, dates and destinations. Expedia can even continue shopping for someone after that customer has closed out a session. When the customer returns, all the latest pricing and availability for their searches are displayed side by side on their Scratchpad.
  • 28.
    Slide 28Slide 28Slide28 www.edureka.co/mongodb Scenario 3 When you need indexing MongoDB's rich indexes are used to power analytics that make personalized suggestions to users while they shop. Expedia can also analyze patterns to pinpoint trends that offer a better understanding of what customers are looking for. For a consumer, personalization saves time, saves money, and gets them one step closer to what they’re really after i.e. a cool vacation. For Expedia, real-time personalization powered by MongoDB means customer loyalty, increased conversions and a competitive edge that goes straight to the bottom line.
  • 29.
  • 30.
    Slide 30 Your feedbackis vital for us, be it a compliment, a suggestion or a complaint. It helps us to make your experience better! Please spare few minutes to take the survey after the webinar. Survey