SlideShare a Scribd company logo
Back to Basics Webinar 1: Introduction to NoSQL
Back to Basics 2017 : Webinar 1
Introduction to NoSQL
Joe Drumgoole
Director of Developer Advocacy, EMEA
MongoDB
@jdrumgoole
V1.3
Welcome!
4
Course Agenda
Date Time Webinar
19-Jan-2017 15:00 GMT Introduction to NoSQL
26-Jan-2017 15:00 GMT Your First MongoDB Application
02-Feb-2017 11:00 GMT Introduction to Replica Sets
09-Feb-2017 11:00 GMT Introduction to Sharding
5
Agenda for Today
• Why NoSQL
• The different types of NoSQL database
• Detailed overview of MongoDB
• Q&A
6
Relational
Expressive Query Language
& Secondary Indexes
Strong Consistency
Enterprise Management
& Integrations
7
The World Has Changed
Data Risk Time Cost
8
NoSQL
Scalability
& Performance
Always On,
Global Deployments
FlexibilityExpressive Query Language
& Secondary Indexes
Strong Consistency
Enterprise Management
& Integrations
9
Nexus Architecture
Scalability
& Performance
Always On,
Global Deployments
FlexibilityExpressive Query Language
& Secondary Indexes
Strong Consistency
Enterprise Management
& Integrations
10
Types of NoSQL Database
• Key/Value Stores
• Column Stores
• Graph Stores
• Multi-model Databases
• Document Stores
11
Key Value Stores
• An associative array
• Single key lookup
• Very fast single key lookup
• Not so hot for “reverse lookups”
Key Value
12345 4567.3456787
12346 { addr1 : “The Grange”, addr2: “Dublin” }
12347 “top secret password”
12358 “Shopping basket value : 24560”
12787 12345
12
Revision : Row Stores (RDBMS)
• Store data aligned by rows (traditional RDBMS, e.g MySQL)
• Reads retrieve a complete row everytime
• Reads requiring only one or two columns are wasteful
ID Name Salary Start Date
1 Joe D $24000 1/Jun/1970
2 Peter J $28000 1/Feb/1972
3 Phil G $23000 1/Jan/1973
1 Joe D $24000 1/Jun/1970 2 Peter J $28000 1/Feb/1972 3 Phil G $23000 1/Jan/1973
13
How a Column Store Does it
1 2 3
ID Name Salary Start Date
1 Joe D $24000 1/Jun/1970
2 Peter J $28000 1/Feb/1972
3 Phil G $23000 1/Jan/1973
Joe D Peter J Phil G $24000 $28000 $23000 1/Jun/1970 1/Feb/1972 1/Jan/1973
14
Why is this Attractive?
• A series of consecutive seeks can retrieve a column efficiently
• Compressing similar data is super efficient
• How do I align my rows? By order or by inserting a row ID
• IF you just need a small number of columns you don’t need to
read all the rows
• But:
– Updating and deleting by row is expensive
• Append only is preferred
• Better for OLAP than OLTP
15
Graph Stores
• Store graphs (edges and vertexes)
• E.g. social networks
• Designed to allow efficient traversal
• Optimised for representing connections
• Can be implemented as a key value stored with the ability to store
links
• MongoDB 3.4 supports graph queries
16
Multi-Model Databases
• Combine multiple storage/access models
• Often Graph plus “something else”
• Fixes the “polyglot persistence” issue of keeping multiple
independent databases consistent
• The “new new thing” in NoSQL Land
• MongoDB is a "multi-modal" document store
– Graph
– Geo-Spatial
– B-tree
– Full Text
17
Document Store
• Not PDFs, Microsoft Word or HTML
• Documents are nested structures created using Javascript Object Notation (JSON)
{
name : “Joe Drumgoole”,
title : “Director of Developer Advocacy”,
Address : {
address1 : “Latin Hall”,
address2 : “Golden Lane”,
eircode : “D09 N623”,
}
expertise: [ “MongoDB”, “Python”, “Javascript” ],
employee_number : 320,
location : [ 53.34, -6.26 ]
}
18
MongoDB Documents are Typed
{
name : “Joe Drumgoole”,
title : “Director of Developer Advocacy”,
Address : {
address1 : “Latin Hall”,
address2 : “Golden Lane”,
eircode : “D09 N623”,
}
expertise: [ “MongoDB”, “Python”, “Javascript” ],
employee_number : 320,
location : [ 53.34, -6.26 ]
}
Strings
Nested Document
Array
Integer
Geo-spatial Coordinates
19
MongoDB Understands JSON Documents
• From the very first version it was a native JSON database
• Understands and can index the sub-structures
• Stores JSON as a binary format called BSON
• Efficient for encoding and decoding for network transmission
• MongoDB can create indexes on any document field
• (We will cover these areas in detail later on in the course)
20
Why Documents?
• Dynamic Schema
• Elimination of Object/Relational Mapping Layer
• Implicit denormalisation of the data for performance
21
Why Documents?
• Dynamic Schema
• Elimination of Object/Relational Mapping Layer
• Implicit denormalisation of the data for performance
22
Aggregation Framework
23
Pipeline Operators
• $match
Filter documents
• $project
Reshape documents
• $group
Summarize documents
• $out
Create new collections
• $sort
Order documents
• $limit/$skip
Paginate documents
• $lookup
Join two collections together
• $unwind
Expand an array
24
Instant Start with Compass and Atlas
Compass
Atlas
25
Next Webinar – Your First MongoDB Application
• 26th Jan 2017 – 15:00 GMT.
• Learn how to build your first MongoDB application
– Create databases and collections
– Look at queries
– Build indexes
– Start to understand performance
• Register at https://www.mongodb.com/webinar/back-to-basics-
webinar-series
• Send feedback to back-to-basics@mongodb.com
26
What's Next?
• Sign up for an online course: https://university.mongodb.com/
• Join a MUG: https://www.meetup.com/pro/mongodb/
Q&A
Back to Basics Webinar 1: Introduction to NoSQL

More Related Content

PPTX
Back to Basics Webinar 2: Your First MongoDB Application
PPTX
Webinar: Getting Started with MongoDB - Back to Basics
PPTX
Beyond the Basics 2: Aggregation Framework
KEY
PPTX
Back to Basics Webinar 1: Introduction to NoSQL
PPTX
Back to Basics: My First MongoDB Application
PDF
Webinar: Working with Graph Data in MongoDB
PPT
Introduction to MongoDB
Back to Basics Webinar 2: Your First MongoDB Application
Webinar: Getting Started with MongoDB - Back to Basics
Beyond the Basics 2: Aggregation Framework
Back to Basics Webinar 1: Introduction to NoSQL
Back to Basics: My First MongoDB Application
Webinar: Working with Graph Data in MongoDB
Introduction to MongoDB

What's hot (20)

PPTX
How to leverage MongoDB for Big Data Analysis and Operations with MongoDB's A...
PPTX
Back to Basics Webinar 3: Introduction to Replica Sets
ODP
MongoDB : The Definitive Guide
PPTX
PPTX
Back to Basics, webinar 2: La tua prima applicazione MongoDB
PPTX
Back to Basics Webinar 4: Advanced Indexing, Text and Geospatial Indexes
PPTX
Webinar: Back to Basics: Thinking in Documents
PPTX
MongoDB 101
PPTX
High Performance Applications with MongoDB
PPTX
Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB
PPTX
Back to Basics Webinar 5: Introduction to the Aggregation Framework
PDF
An introduction to MongoDB
PPTX
Intro To Mongo Db
PPTX
Basics of MongoDB
PPTX
Conceptos básicos. Seminario web 4: Indexación avanzada, índices de texto y g...
PPT
PhpstudyTokyo MongoDB PHP CakePHP
PPTX
Back to Basics Webinar 3: Schema Design Thinking in Documents
PPTX
Conceptos básicos. Seminario web 5: Introducción a Aggregation Framework
PDF
Mongo Presentation by Metatagg Solutions
PDF
Python and MongoDB
How to leverage MongoDB for Big Data Analysis and Operations with MongoDB's A...
Back to Basics Webinar 3: Introduction to Replica Sets
MongoDB : The Definitive Guide
Back to Basics, webinar 2: La tua prima applicazione MongoDB
Back to Basics Webinar 4: Advanced Indexing, Text and Geospatial Indexes
Webinar: Back to Basics: Thinking in Documents
MongoDB 101
High Performance Applications with MongoDB
Conceptos básicos. Seminario web 2: Su primera aplicación MongoDB
Back to Basics Webinar 5: Introduction to the Aggregation Framework
An introduction to MongoDB
Intro To Mongo Db
Basics of MongoDB
Conceptos básicos. Seminario web 4: Indexación avanzada, índices de texto y g...
PhpstudyTokyo MongoDB PHP CakePHP
Back to Basics Webinar 3: Schema Design Thinking in Documents
Conceptos básicos. Seminario web 5: Introducción a Aggregation Framework
Mongo Presentation by Metatagg Solutions
Python and MongoDB
Ad

Viewers also liked (9)

PDF
Using MongoDB as a high performance graph database
PPTX
Building a Directed Graph with MongoDB
PPTX
The Aggregation Framework
PDF
Design, Scale and Performance of MapR's Distribution for Hadoop
PPTX
Seattle Scalability Meetup - Ted Dunning - MapR
PDF
Creating a Modern Data Architecture for Digital Transformation
PDF
Webinar: 10-Step Guide to Creating a Single View of your Business
PPTX
MongoDB Analytics: Learn Aggregation by Example - Exploratory Analytics and V...
PPTX
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...
Using MongoDB as a high performance graph database
Building a Directed Graph with MongoDB
The Aggregation Framework
Design, Scale and Performance of MapR's Distribution for Hadoop
Seattle Scalability Meetup - Ted Dunning - MapR
Creating a Modern Data Architecture for Digital Transformation
Webinar: 10-Step Guide to Creating a Single View of your Business
MongoDB Analytics: Learn Aggregation by Example - Exploratory Analytics and V...
MongoDB for Time Series Data Part 2: Analyzing Time Series Data Using the Agg...
Ad

Similar to Back to Basics Webinar 1: Introduction to NoSQL (20)

PPTX
Back to Basics Webinar 1 - Introduction to NoSQL
PPTX
Conceptos básicos. Seminario web 1: Introducción a NoSQL
PPTX
Introducción a NoSQL
PPTX
Python Ireland Conference 2016 - Python and MongoDB Workshop
PPTX
MongoDB Introduction - Document Oriented Nosql Database
PPTX
An Introduction to Big Data, NoSQL and MongoDB
PPTX
MongoDB 2.4 and spring data
KEY
NoSQL in the context of Social Web
PDF
Mongodb
PPTX
Mongo db
PPTX
NoSQL and MongoDB Introdction
PPTX
Mongodb open data day 2014
PPTX
mongodb_DS.pptx
PPTX
Introduction to NoSQL and MongoDB
PPT
Introduction to MongoDB
PDF
An introduction to MongoDB
PDF
An introduction to MongoDB by César Trigo #OpenExpoDay 2014
PPTX
Untangling - fall2017 - week 8
PPTX
MongoDB by Emroz sardar.
PDF
Baisc introduction of mongodb for beginn
Back to Basics Webinar 1 - Introduction to NoSQL
Conceptos básicos. Seminario web 1: Introducción a NoSQL
Introducción a NoSQL
Python Ireland Conference 2016 - Python and MongoDB Workshop
MongoDB Introduction - Document Oriented Nosql Database
An Introduction to Big Data, NoSQL and MongoDB
MongoDB 2.4 and spring data
NoSQL in the context of Social Web
Mongodb
Mongo db
NoSQL and MongoDB Introdction
Mongodb open data day 2014
mongodb_DS.pptx
Introduction to NoSQL and MongoDB
Introduction to MongoDB
An introduction to MongoDB
An introduction to MongoDB by César Trigo #OpenExpoDay 2014
Untangling - fall2017 - week 8
MongoDB by Emroz sardar.
Baisc introduction of mongodb for beginn

More from MongoDB (20)

PDF
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
PDF
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
PDF
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
PDF
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
PDF
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
PDF
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
PDF
MongoDB SoCal 2020: MongoDB Atlas Jump Start
PDF
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
PDF
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
PDF
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
PDF
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
PDF
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
PDF
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
PDF
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
PDF
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
PDF
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
PDF
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
PDF
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
PDF
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
PDF
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB SoCal 2020: Migrate Anything* to MongoDB Atlas
MongoDB SoCal 2020: Go on a Data Safari with MongoDB Charts!
MongoDB SoCal 2020: Using MongoDB Services in Kubernetes: Any Platform, Devel...
MongoDB SoCal 2020: A Complete Methodology of Data Modeling for MongoDB
MongoDB SoCal 2020: From Pharmacist to Analyst: Leveraging MongoDB for Real-T...
MongoDB SoCal 2020: Best Practices for Working with IoT and Time-series Data
MongoDB SoCal 2020: MongoDB Atlas Jump Start
MongoDB .local San Francisco 2020: Powering the new age data demands [Infosys]
MongoDB .local San Francisco 2020: Using Client Side Encryption in MongoDB 4.2
MongoDB .local San Francisco 2020: Using MongoDB Services in Kubernetes: any ...
MongoDB .local San Francisco 2020: Go on a Data Safari with MongoDB Charts!
MongoDB .local San Francisco 2020: From SQL to NoSQL -- Changing Your Mindset
MongoDB .local San Francisco 2020: MongoDB Atlas Jumpstart
MongoDB .local San Francisco 2020: Tips and Tricks++ for Querying and Indexin...
MongoDB .local San Francisco 2020: Aggregation Pipeline Power++
MongoDB .local San Francisco 2020: A Complete Methodology of Data Modeling fo...
MongoDB .local San Francisco 2020: MongoDB Atlas Data Lake Technical Deep Dive
MongoDB .local San Francisco 2020: Developing Alexa Skills with MongoDB & Golang
MongoDB .local Paris 2020: Realm : l'ingrédient secret pour de meilleures app...
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...

Recently uploaded (20)

PPTX
Modelling in Business Intelligence , information system
PPTX
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
PDF
Introduction to the R Programming Language
PDF
Introduction to Data Science and Data Analysis
PDF
REAL ILLUMINATI AGENT IN KAMPALA UGANDA CALL ON+256765750853/0705037305
PPTX
Acceptance and paychological effects of mandatory extra coach I classes.pptx
PDF
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
PPTX
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
PDF
Capcut Pro Crack For PC Latest Version {Fully Unlocked 2025}
PPTX
AI Strategy room jwfjksfksfjsjsjsjsjfsjfsj
PPTX
01_intro xxxxxxxxxxfffffffffffaaaaaaaaaaafg
PPTX
Managing Community Partner Relationships
PDF
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
PPTX
Qualitative Qantitative and Mixed Methods.pptx
PPTX
importance of Data-Visualization-in-Data-Science. for mba studnts
PPTX
Data_Analytics_and_PowerBI_Presentation.pptx
PPTX
Microsoft-Fabric-Unifying-Analytics-for-the-Modern-Enterprise Solution.pptx
PPTX
CEE 2 REPORT G7.pptxbdbshjdgsgjgsjfiuhsd
PPTX
A Complete Guide to Streamlining Business Processes
PPTX
Pilar Kemerdekaan dan Identi Bangsa.pptx
Modelling in Business Intelligence , information system
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
Introduction to the R Programming Language
Introduction to Data Science and Data Analysis
REAL ILLUMINATI AGENT IN KAMPALA UGANDA CALL ON+256765750853/0705037305
Acceptance and paychological effects of mandatory extra coach I classes.pptx
168300704-gasification-ppt.pdfhghhhsjsjhsuxush
iec ppt-1 pptx icmr ppt on rehabilitation.pptx
Capcut Pro Crack For PC Latest Version {Fully Unlocked 2025}
AI Strategy room jwfjksfksfjsjsjsjsjfsjfsj
01_intro xxxxxxxxxxfffffffffffaaaaaaaaaaafg
Managing Community Partner Relationships
22.Patil - Early prediction of Alzheimer’s disease using convolutional neural...
Qualitative Qantitative and Mixed Methods.pptx
importance of Data-Visualization-in-Data-Science. for mba studnts
Data_Analytics_and_PowerBI_Presentation.pptx
Microsoft-Fabric-Unifying-Analytics-for-the-Modern-Enterprise Solution.pptx
CEE 2 REPORT G7.pptxbdbshjdgsgjgsjfiuhsd
A Complete Guide to Streamlining Business Processes
Pilar Kemerdekaan dan Identi Bangsa.pptx

Back to Basics Webinar 1: Introduction to NoSQL

  • 2. Back to Basics 2017 : Webinar 1 Introduction to NoSQL Joe Drumgoole Director of Developer Advocacy, EMEA MongoDB @jdrumgoole V1.3
  • 4. 4 Course Agenda Date Time Webinar 19-Jan-2017 15:00 GMT Introduction to NoSQL 26-Jan-2017 15:00 GMT Your First MongoDB Application 02-Feb-2017 11:00 GMT Introduction to Replica Sets 09-Feb-2017 11:00 GMT Introduction to Sharding
  • 5. 5 Agenda for Today • Why NoSQL • The different types of NoSQL database • Detailed overview of MongoDB • Q&A
  • 6. 6 Relational Expressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
  • 7. 7 The World Has Changed Data Risk Time Cost
  • 8. 8 NoSQL Scalability & Performance Always On, Global Deployments FlexibilityExpressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
  • 9. 9 Nexus Architecture Scalability & Performance Always On, Global Deployments FlexibilityExpressive Query Language & Secondary Indexes Strong Consistency Enterprise Management & Integrations
  • 10. 10 Types of NoSQL Database • Key/Value Stores • Column Stores • Graph Stores • Multi-model Databases • Document Stores
  • 11. 11 Key Value Stores • An associative array • Single key lookup • Very fast single key lookup • Not so hot for “reverse lookups” Key Value 12345 4567.3456787 12346 { addr1 : “The Grange”, addr2: “Dublin” } 12347 “top secret password” 12358 “Shopping basket value : 24560” 12787 12345
  • 12. 12 Revision : Row Stores (RDBMS) • Store data aligned by rows (traditional RDBMS, e.g MySQL) • Reads retrieve a complete row everytime • Reads requiring only one or two columns are wasteful ID Name Salary Start Date 1 Joe D $24000 1/Jun/1970 2 Peter J $28000 1/Feb/1972 3 Phil G $23000 1/Jan/1973 1 Joe D $24000 1/Jun/1970 2 Peter J $28000 1/Feb/1972 3 Phil G $23000 1/Jan/1973
  • 13. 13 How a Column Store Does it 1 2 3 ID Name Salary Start Date 1 Joe D $24000 1/Jun/1970 2 Peter J $28000 1/Feb/1972 3 Phil G $23000 1/Jan/1973 Joe D Peter J Phil G $24000 $28000 $23000 1/Jun/1970 1/Feb/1972 1/Jan/1973
  • 14. 14 Why is this Attractive? • A series of consecutive seeks can retrieve a column efficiently • Compressing similar data is super efficient • How do I align my rows? By order or by inserting a row ID • IF you just need a small number of columns you don’t need to read all the rows • But: – Updating and deleting by row is expensive • Append only is preferred • Better for OLAP than OLTP
  • 15. 15 Graph Stores • Store graphs (edges and vertexes) • E.g. social networks • Designed to allow efficient traversal • Optimised for representing connections • Can be implemented as a key value stored with the ability to store links • MongoDB 3.4 supports graph queries
  • 16. 16 Multi-Model Databases • Combine multiple storage/access models • Often Graph plus “something else” • Fixes the “polyglot persistence” issue of keeping multiple independent databases consistent • The “new new thing” in NoSQL Land • MongoDB is a "multi-modal" document store – Graph – Geo-Spatial – B-tree – Full Text
  • 17. 17 Document Store • Not PDFs, Microsoft Word or HTML • Documents are nested structures created using Javascript Object Notation (JSON) { name : “Joe Drumgoole”, title : “Director of Developer Advocacy”, Address : { address1 : “Latin Hall”, address2 : “Golden Lane”, eircode : “D09 N623”, } expertise: [ “MongoDB”, “Python”, “Javascript” ], employee_number : 320, location : [ 53.34, -6.26 ] }
  • 18. 18 MongoDB Documents are Typed { name : “Joe Drumgoole”, title : “Director of Developer Advocacy”, Address : { address1 : “Latin Hall”, address2 : “Golden Lane”, eircode : “D09 N623”, } expertise: [ “MongoDB”, “Python”, “Javascript” ], employee_number : 320, location : [ 53.34, -6.26 ] } Strings Nested Document Array Integer Geo-spatial Coordinates
  • 19. 19 MongoDB Understands JSON Documents • From the very first version it was a native JSON database • Understands and can index the sub-structures • Stores JSON as a binary format called BSON • Efficient for encoding and decoding for network transmission • MongoDB can create indexes on any document field • (We will cover these areas in detail later on in the course)
  • 20. 20 Why Documents? • Dynamic Schema • Elimination of Object/Relational Mapping Layer • Implicit denormalisation of the data for performance
  • 21. 21 Why Documents? • Dynamic Schema • Elimination of Object/Relational Mapping Layer • Implicit denormalisation of the data for performance
  • 23. 23 Pipeline Operators • $match Filter documents • $project Reshape documents • $group Summarize documents • $out Create new collections • $sort Order documents • $limit/$skip Paginate documents • $lookup Join two collections together • $unwind Expand an array
  • 24. 24 Instant Start with Compass and Atlas Compass Atlas
  • 25. 25 Next Webinar – Your First MongoDB Application • 26th Jan 2017 – 15:00 GMT. • Learn how to build your first MongoDB application – Create databases and collections – Look at queries – Build indexes – Start to understand performance • Register at https://www.mongodb.com/webinar/back-to-basics- webinar-series • Send feedback to [email protected]
  • 26. 26 What's Next? • Sign up for an online course: https://university.mongodb.com/ • Join a MUG: https://www.meetup.com/pro/mongodb/
  • 27. Q&A

Editor's Notes

  • #3: Who I am, how long have I been at MongoDB.
  • #4: Delighted to have you here. Hope you can make it to all the sessions. Sessions will be recorded so we can send them out afterwards so don’t worry if you miss one. If you have questions please pop them in the sidebar.
  • #7: A lot of people expect us to come in and bash relational database or say we don’t think they’re good. And that’s simply not true. Relational databases has laid the foundation for what you’d want out of a database, and we absolutely think there are capabilities that remain critical today Expressive query language & secondary Indexes. Users should be able to access and manipulate their data in sophisticated ways – and you need a query language that let’s you do all that out of the box. Indexes are a critical part of providing efficient access to data. We believe these are table stakes for a database. Strong consistency. Strong consistency has become second nature for how we think about building applications, and for good reason. The database should always provide access to the most up-to-date copy of the data. Strong consistency is the right way to design a database. Enterprise Management and Integrations. Finally, databases are just one piece of the puzzle, and they need to fit into the enterprise IT stack. Organizations need a database that can be secured, monitored, automated, and integrated with their existing IT infrastructure and staff, such as operations teams, DBAs, and data analysts.
  • #8: But of course the world has changed a lot since the 1980s when the relational database first came about. First of all, data and risk are significantly up. In terms of data 90% data created in last 2 years - think about that for a moment, of all the data ever created, 90% of it was in the last 2 years 80% of enterprise data is unstructured - this is data that doesn’t fit into the neat tables of a relational database Unstructured data is growing 2X rate of structured data At the same time, risks of running a database are higher than ever before. You are now faced with: More users - Apps have shifted from small internal departmental system with thousands of users to large external audiences with millions of users No downtime - It’s no longer the case that apps only need to be available during standard business hours. They must be up 24/7. All across the globe - your users are everywhere, and they are always connected On the other hand, time and costs are way down. There’s less time to build apps than ever before. You’re being asked to: Ship apps in a few months not years - Development methods have shifted from a waterfall process to an iterative process that ships new functionality in weeks and in some cases multiple times per day at companies like Facebook and Amazon. And costs are way down too.  Companies want to: Pay for value over time - Companies have shifted to open-source business and SaaS models that allow them to pay for value over time Use cloud and commodity resources - to reduce the time to provision their infrastructure, and to lower their total cost of ownership
  • #9: Because the relational database was not designed for modern applications, starting about 10 years ago a number of companies began to build their own databases that are fundamentally different. The market calls these NoSQL. NoSQL databases were designed for this new world… Flexibility. All of them have some kind of flexible data model to allow for faster iteration and to accommodate the data we see dominating modern applications. While they all have different approaches, what they have in common is they want to be more flexible. Scalability + Performance. Similarly, they were all built with a focus on scalability, so they all include some form of sharding or partitioning. And they're all designed to deliver great performance. Some are better at reads, some are better at writes, but more or less they all strive to have better performance than a relational database. Always-On Global Deployments. Lastly, NoSQL databases are designed for highly available systems that provide a consistent, high quality experience for users all over the world. They are designed to run on many computers, and they include replication to automatically synchronize the data across servers, racks, and data centers. However, when you take a closer look at these NoSQL systems, it turns out they have thrown out the baby with the bathwater. They have sacrificed the core database capabilities you’ve come to expect and rely on in order to build fully functional apps, like rich querying and secondary indexes, strong consistency, and enterprise management.
  • #10: MongoDB was built to address the way the world has changed while preserving the core database capabilities required to build modern applications. Our vision is to leverage the work that Oracle and others have done over the last 40 years to make relational databases what they are today, and to take the reins from here. We pick up where they left off, incorporating the work that internet pioneers like Google and Amazon did to address the requirements of modern applications. MongoDB is the only database that harnesses the innovations of NoSQL and maintains the foundation of relational databases – and we call this our Nexus Architecture.
  • #12: Think redis, memcached or Couchbase.
  • #15: Column stores you know and love, HP Vertica, Cassandra.
  • #17: No copies of data for multi-modal