SlideShare a Scribd company logo
MWLUG 2017
Moving Collaboration Forward
MongoDB – What You Need to
Know
Kim Greene
Kim Greene Consulting, Inc.
kim@kimgreene.com
MWLUG 2017
Moving Collaboration Forward
About Me
{
“name”: “Kim Greene”,
“email”: “kim@kimgreene.com”,
“company”: “Kim Greene Consulting, Inc.”,
“website”: “www.kimgreene.com”,
“twitter”: “@iSeriesDomino”,
}
MWLUG 2017
Moving Collaboration Forward
Agenda
• What is MongoDB
• MongoDB basics
• How MongoDB compares to relational
databases
• How MongoDB compares to IBM Domino
• Why and how customers are using MongoDB
MWLUG 2017
Moving Collaboration Forward
What is MongoDB?
MWLUG 2017
Moving Collaboration Forward
What is MongoDB?
• MongoDB is a free and open-source cross-platform
document-oriented database program. Classified as a
NoSQL database program, MongoDB uses JSON-like
documents with schemas.
– Source: Wikipedia
MWLUG 2017
Moving Collaboration Forward
More About MongoDB
• Open source
– Source and packages available at mongodb.com/download
– Affero GPL license
• MongoDB deployment
– Designed to be deployed on-premises or in the cloud
MWLUG 2017
Moving Collaboration Forward
NoSQL
• Standard NoSQL
– Non SQL
– Non relational
• MongoDB
– Not only SQL
– Maintains foundation of relational
• Most commonly used in these scenarios
– Big data
– Real-time web applications
• More flexible than relational databases
MWLUG 2017
Moving Collaboration Forward
Multi-Model Database
MWLUG 2017
Moving Collaboration Forward
4 Types of Databases
• WiredTiger
– Most commonly used database type, the default
• Encrypted
– For highly sensitive data
• In-memory
– For performance critical data
• MMAPv1
– Improved version of database used in earlier
versions of MongoDB
MWLUG 2017
Moving Collaboration Forward
Document Oriented
• Store all information for an object in a single
instance
– No spanning tables for all information
– No more normalizing data
• Each stored object can be different
– Not all documents need to contain the same data
• Handles semi-structured, unstructured, and
polymorphic data
MWLUG 2017
Moving Collaboration Forward
Document Oriented
MWLUG 2017
Moving Collaboration Forward
JSON-Like
• BSON
– Serialization of JSON data in a quick to move
format
– Ensures can replicate quickly and efficiently
MWLUG 2017
Moving Collaboration Forward
Expressive Query Language
Rich queries Find Kim’s cat
Find all cats in Quebec ages 5 to 12
Geo spatial Find all cats in the 10 mile radius of
Alexandria, VA
Text search Find all black cats
Find all cats with tiger stripes
Aggregation Calculate how much cat food it takes to feed
the cats in Sydney
Map reduce What is the population of cats on each
continent over the past 50 years
MWLUG 2017
Moving Collaboration Forward
Aggregation Pipeline
• Replaces find in certain scenarios
• Improves performance significantly
– Moves processing from the client side to the
server
– Saves CPU and bandwidth
• Reduce the amount of data transmitted
MWLUG 2017
Moving Collaboration Forward
MongoDB Basics
MWLUG 2017
Moving Collaboration Forward
Interacting with the Database
• mongo shell
– Interactive JavaScript shell
• MongoDB Compass
– GUI
• Modify docs, create validation rules, optimize query
performance
• Build and execute queries with results viewed both
graphically and as a set of JSON documents
• MongoDB Professional
– The full monty
MWLUG 2017
Moving Collaboration Forward
Indexes
• Fundamental requirement for performance
• Ensures quick and efficient access to data
• Prevent collection scans
MWLUG 2017
Moving Collaboration Forward
Security
• A layered approach
– OS
• Apparmor, SELinux
– Network
• IPTABLES, NETFILTER
– MongoDB
– Application
MWLUG 2017
Moving Collaboration Forward
Security
• MongoDB 5 main components
– Authentication
• Who are you
– Authorization
• What can you do
– Encryption
– Auditing
– Log redaction
MWLUG 2017
Moving Collaboration Forward
Roles
• Built-in roles
– read
– readWrite
– dbAdmin
– clusterAdmin
– root
• User-defined roles
MWLUG 2017
Moving Collaboration Forward
How MongoDB Compares to
Relational Databases
MWLUG 2017
Moving Collaboration Forward
Relational Schema Design
MWLUG 2017
Moving Collaboration Forward
MongoDB Schema Design
MWLUG 2017
Moving Collaboration Forward
MongoDB vs. Relational
Relational
Database
MongoDB
Database Database
Table Collection
Index Index
Row Document
Column Field
Join Embedding & Linking
MWLUG 2017
Moving Collaboration Forward
Data Validation
• Most NoSQL databases
– Push enforcement of data validation controls to
application code
• MongoDB
– Provides data validation within the database
– Developers can enforce checks on document
structure, data types, date ranges, presence of
mandatory fields, …
MWLUG 2017
Moving Collaboration Forward
Sharding
MWLUG 2017
Moving Collaboration Forward
Why MongoDB vs. Relational?
• Applications needing to work with huge data
volumes or new and rapidly changing data
types
• Need to roll out code changes very quickly
• Applications delivered as services
• Companies moving to scale-out architecture
and open source software
MWLUG 2017
Moving Collaboration Forward
How MongoDB Compares to
IBM Domino
MWLUG 2017
Moving Collaboration Forward
Replica Sets
• Group of MongoDB processes that maintain
the same set of data
– 3 replica sets is the standard for MongoDB
• Provide high availability and redundancy
– Failover is fully automated, no administrator
intervention required
– Self-healing shard
• Optimize read operations
MWLUG 2017
Moving Collaboration Forward
Replica Sets
MWLUG 2017
Moving Collaboration Forward
Election of New Primary
MWLUG 2017
Moving Collaboration Forward
Developer Friendly
• Provides native drivers for popular programming
languages plus over 30 community-developed
drivers
MWLUG 2017
Moving Collaboration Forward
Developer Friendly
• Query model is implemented as methods or
functions within the API of a programming
language
• No need to write in a separate language like
SQL
MWLUG 2017
Moving Collaboration Forward
Why and How Customers are
Using MongoDB
MWLUG 2017
Moving Collaboration Forward
ThermoFischer
• Scientific applications generate humongous data
MWLUG 2017
Moving Collaboration Forward
ThermoFischer
• Why MongoDB was chosen
– Performance and scalability
– Reliability
– Developer productivity
– Cost effective
– Runs anywhere
– Rich set of features
– Achievement of legal and regulatory approval
MWLUG 2017
Moving Collaboration Forward
CoreLogic
MWLUG 2017
Moving Collaboration Forward
CoreLogic
MWLUG 2017
Moving Collaboration Forward
CoreLogic
• Efficient support for geospatial information
– Store latitude, longitude
and other geo data
– Specialized geospatial
index for fast search
• Search by location or area
(polygon, circle)
– Geospatial operators used:
• $geoWithin
• $GeoIntersects
• $near
MWLUG 2017
Moving Collaboration Forward
eHarmony
MWLUG 2017
Moving Collaboration Forward
eHarmony
• Goals of redesign
– Simplified communication flow
– Realtime messaging system
– Extend system to support richer content types
• Giphy
• Video/Photos
• Stickers
– Support various custom business requirements
– Improved user experience
MWLUG 2017
Moving Collaboration Forward
Where to Find More Information
MWLUG 2017
Moving Collaboration Forward
Where to Find More Information
• MongoDB University
– university.mongodb.com
• YouTube tutorials
– youtube.com/mongodb
• Advocacy Hub
– advocacy.mongodb.com

More Related Content

PDF
IN106 Performance with MongoDB
PPTX
MongoDB & The McGraw-Hill Education Learning Analytics Platform
PPTX
Building a Scalable and Modern Infrastructure at CARFAX
PPTX
MongoDB San Francisco 2013: Storing eBay's Media Metadata on MongoDB present...
PPTX
Webinar: Gaining Insights into MongoDB with MongoDB Cloud Manager and New Relic
PDF
A Mobile-First, Cloud-First Stack at Pearson
PPTX
An Introduction to MongoDB Compass
PDF
MongoDB .local Chicago 2019: A MongoDB Journey: Moving from a relational data...
IN106 Performance with MongoDB
MongoDB & The McGraw-Hill Education Learning Analytics Platform
Building a Scalable and Modern Infrastructure at CARFAX
MongoDB San Francisco 2013: Storing eBay's Media Metadata on MongoDB present...
Webinar: Gaining Insights into MongoDB with MongoDB Cloud Manager and New Relic
A Mobile-First, Cloud-First Stack at Pearson
An Introduction to MongoDB Compass
MongoDB .local Chicago 2019: A MongoDB Journey: Moving from a relational data...

What's hot (20)

PPTX
Moving Hudl from MS SQL to MongoDB: A Two Year Journey
PPTX
App Sharding to Autosharding at Sailthru
PPTX
MongoDB Atlas - eHarmony’s New Message Store
PPTX
MongoDB and Our Journey from Old, Slow and Monolithic to Fast and Agile Micro...
PPTX
Unlocking Operational Intelligence from the Data Lake
KEY
MongoDB vs Mysql. A devops point of view
PPTX
MongoDB Partner Program Update - November 2013
PDF
Blazing Fast Analytics with MongoDB & Spark
PPTX
Benefits of Using MongoDB Over RDBMSs
PDF
Spark and MongoDB
PPTX
Webinar: What's New in MongoDB 3.2
PPT
Mindtalk Tech - Behind the scenes
PDF
Business Track: How MongoDB Helps Telefonia Digital Accelerate Time to Market
PDF
MongoDB 3.2 Feature Preview
PDF
MongoDB at Baidu
PDF
MongoDB Introduction talk at Dr Dobbs Conference, MongoDB Evenings at Bangalo...
PPTX
Webinar: Simplifying the Database Experience with MongoDB Atlas
PDF
MongoDB Certification Study Group - May 2016
PPTX
Solr Under the Hood at S&P Global- Sumit Vadhera, S&P Global
PPTX
Migrating from RDBMS to MongoDB
Moving Hudl from MS SQL to MongoDB: A Two Year Journey
App Sharding to Autosharding at Sailthru
MongoDB Atlas - eHarmony’s New Message Store
MongoDB and Our Journey from Old, Slow and Monolithic to Fast and Agile Micro...
Unlocking Operational Intelligence from the Data Lake
MongoDB vs Mysql. A devops point of view
MongoDB Partner Program Update - November 2013
Blazing Fast Analytics with MongoDB & Spark
Benefits of Using MongoDB Over RDBMSs
Spark and MongoDB
Webinar: What's New in MongoDB 3.2
Mindtalk Tech - Behind the scenes
Business Track: How MongoDB Helps Telefonia Digital Accelerate Time to Market
MongoDB 3.2 Feature Preview
MongoDB at Baidu
MongoDB Introduction talk at Dr Dobbs Conference, MongoDB Evenings at Bangalo...
Webinar: Simplifying the Database Experience with MongoDB Atlas
MongoDB Certification Study Group - May 2016
Solr Under the Hood at S&P Global- Sumit Vadhera, S&P Global
Migrating from RDBMS to MongoDB
Ad

Similar to IN103 MongoDB What You Need To Know (20)

PPTX
Webinar: When to Use MongoDB
PPTX
MongoDB Evening Austin, TX 2017
PPTX
When to Use MongoDB
PPTX
Dataweek-Talk-2014
PPTX
When to Use MongoDB...and When You Should Not...
PPTX
MongoDB Training
PPTX
Mongodb hashim shaikh
PPTX
Mongodb Presentation
PPTX
Mongodb Presentation
PDF
Implement DevOps Like a Unicorn—Even If You’re Not One
PPTX
Building A Relevancy Engine Using MongoDB and Go
PPTX
MongoDB for Spatio-Behavioral Data Analysis and Visualization
PDF
Mongo db 3.4 Overview
PPTX
Webinar: “ditch Oracle NOW”: Best Practices for Migrating to MongoDB
PPT
MongoDB Tick Data Presentation
PDF
Final_CloudEventFrankfurt2017 (1).pdf
PDF
Enabling Telco to Build and Run Modern Applications
PPTX
Branf final bringing mongodb into your organization - mongo db-boston2012
PPTX
MERN stack Workshop - GDG On Campus NBNSCOE
PPTX
Introducción a NoSQL
Webinar: When to Use MongoDB
MongoDB Evening Austin, TX 2017
When to Use MongoDB
Dataweek-Talk-2014
When to Use MongoDB...and When You Should Not...
MongoDB Training
Mongodb hashim shaikh
Mongodb Presentation
Mongodb Presentation
Implement DevOps Like a Unicorn—Even If You’re Not One
Building A Relevancy Engine Using MongoDB and Go
MongoDB for Spatio-Behavioral Data Analysis and Visualization
Mongo db 3.4 Overview
Webinar: “ditch Oracle NOW”: Best Practices for Migrating to MongoDB
MongoDB Tick Data Presentation
Final_CloudEventFrankfurt2017 (1).pdf
Enabling Telco to Build and Run Modern Applications
Branf final bringing mongodb into your organization - mongo db-boston2012
MERN stack Workshop - GDG On Campus NBNSCOE
Introducción a NoSQL
Ad

Recently uploaded (20)

PPT
Teaching material agriculture food technology
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
sap open course for s4hana steps from ECC to s4
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
Cloud computing and distributed systems.
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Electronic commerce courselecture one. Pdf
PDF
Approach and Philosophy of On baking technology
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
Teaching material agriculture food technology
Reach Out and Touch Someone: Haptics and Empathic Computing
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Advanced methodologies resolving dimensionality complications for autism neur...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
sap open course for s4hana steps from ECC to s4
The AUB Centre for AI in Media Proposal.docx
Building Integrated photovoltaic BIPV_UPV.pdf
Understanding_Digital_Forensics_Presentation.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Cloud computing and distributed systems.
“AI and Expert System Decision Support & Business Intelligence Systems”
Electronic commerce courselecture one. Pdf
Approach and Philosophy of On baking technology
NewMind AI Weekly Chronicles - August'25 Week I
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Diabetes mellitus diagnosis method based random forest with bat algorithm
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Digital-Transformation-Roadmap-for-Companies.pptx

IN103 MongoDB What You Need To Know

  • 1. MWLUG 2017 Moving Collaboration Forward MongoDB – What You Need to Know Kim Greene Kim Greene Consulting, Inc. kim@kimgreene.com
  • 2. MWLUG 2017 Moving Collaboration Forward About Me { “name”: “Kim Greene”, “email”: “kim@kimgreene.com”, “company”: “Kim Greene Consulting, Inc.”, “website”: “www.kimgreene.com”, “twitter”: “@iSeriesDomino”, }
  • 3. MWLUG 2017 Moving Collaboration Forward Agenda • What is MongoDB • MongoDB basics • How MongoDB compares to relational databases • How MongoDB compares to IBM Domino • Why and how customers are using MongoDB
  • 4. MWLUG 2017 Moving Collaboration Forward What is MongoDB?
  • 5. MWLUG 2017 Moving Collaboration Forward What is MongoDB? • MongoDB is a free and open-source cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with schemas. – Source: Wikipedia
  • 6. MWLUG 2017 Moving Collaboration Forward More About MongoDB • Open source – Source and packages available at mongodb.com/download – Affero GPL license • MongoDB deployment – Designed to be deployed on-premises or in the cloud
  • 7. MWLUG 2017 Moving Collaboration Forward NoSQL • Standard NoSQL – Non SQL – Non relational • MongoDB – Not only SQL – Maintains foundation of relational • Most commonly used in these scenarios – Big data – Real-time web applications • More flexible than relational databases
  • 8. MWLUG 2017 Moving Collaboration Forward Multi-Model Database
  • 9. MWLUG 2017 Moving Collaboration Forward 4 Types of Databases • WiredTiger – Most commonly used database type, the default • Encrypted – For highly sensitive data • In-memory – For performance critical data • MMAPv1 – Improved version of database used in earlier versions of MongoDB
  • 10. MWLUG 2017 Moving Collaboration Forward Document Oriented • Store all information for an object in a single instance – No spanning tables for all information – No more normalizing data • Each stored object can be different – Not all documents need to contain the same data • Handles semi-structured, unstructured, and polymorphic data
  • 11. MWLUG 2017 Moving Collaboration Forward Document Oriented
  • 12. MWLUG 2017 Moving Collaboration Forward JSON-Like • BSON – Serialization of JSON data in a quick to move format – Ensures can replicate quickly and efficiently
  • 13. MWLUG 2017 Moving Collaboration Forward Expressive Query Language Rich queries Find Kim’s cat Find all cats in Quebec ages 5 to 12 Geo spatial Find all cats in the 10 mile radius of Alexandria, VA Text search Find all black cats Find all cats with tiger stripes Aggregation Calculate how much cat food it takes to feed the cats in Sydney Map reduce What is the population of cats on each continent over the past 50 years
  • 14. MWLUG 2017 Moving Collaboration Forward Aggregation Pipeline • Replaces find in certain scenarios • Improves performance significantly – Moves processing from the client side to the server – Saves CPU and bandwidth • Reduce the amount of data transmitted
  • 15. MWLUG 2017 Moving Collaboration Forward MongoDB Basics
  • 16. MWLUG 2017 Moving Collaboration Forward Interacting with the Database • mongo shell – Interactive JavaScript shell • MongoDB Compass – GUI • Modify docs, create validation rules, optimize query performance • Build and execute queries with results viewed both graphically and as a set of JSON documents • MongoDB Professional – The full monty
  • 17. MWLUG 2017 Moving Collaboration Forward Indexes • Fundamental requirement for performance • Ensures quick and efficient access to data • Prevent collection scans
  • 18. MWLUG 2017 Moving Collaboration Forward Security • A layered approach – OS • Apparmor, SELinux – Network • IPTABLES, NETFILTER – MongoDB – Application
  • 19. MWLUG 2017 Moving Collaboration Forward Security • MongoDB 5 main components – Authentication • Who are you – Authorization • What can you do – Encryption – Auditing – Log redaction
  • 20. MWLUG 2017 Moving Collaboration Forward Roles • Built-in roles – read – readWrite – dbAdmin – clusterAdmin – root • User-defined roles
  • 21. MWLUG 2017 Moving Collaboration Forward How MongoDB Compares to Relational Databases
  • 22. MWLUG 2017 Moving Collaboration Forward Relational Schema Design
  • 23. MWLUG 2017 Moving Collaboration Forward MongoDB Schema Design
  • 24. MWLUG 2017 Moving Collaboration Forward MongoDB vs. Relational Relational Database MongoDB Database Database Table Collection Index Index Row Document Column Field Join Embedding & Linking
  • 25. MWLUG 2017 Moving Collaboration Forward Data Validation • Most NoSQL databases – Push enforcement of data validation controls to application code • MongoDB – Provides data validation within the database – Developers can enforce checks on document structure, data types, date ranges, presence of mandatory fields, …
  • 27. MWLUG 2017 Moving Collaboration Forward Why MongoDB vs. Relational? • Applications needing to work with huge data volumes or new and rapidly changing data types • Need to roll out code changes very quickly • Applications delivered as services • Companies moving to scale-out architecture and open source software
  • 28. MWLUG 2017 Moving Collaboration Forward How MongoDB Compares to IBM Domino
  • 29. MWLUG 2017 Moving Collaboration Forward Replica Sets • Group of MongoDB processes that maintain the same set of data – 3 replica sets is the standard for MongoDB • Provide high availability and redundancy – Failover is fully automated, no administrator intervention required – Self-healing shard • Optimize read operations
  • 30. MWLUG 2017 Moving Collaboration Forward Replica Sets
  • 31. MWLUG 2017 Moving Collaboration Forward Election of New Primary
  • 32. MWLUG 2017 Moving Collaboration Forward Developer Friendly • Provides native drivers for popular programming languages plus over 30 community-developed drivers
  • 33. MWLUG 2017 Moving Collaboration Forward Developer Friendly • Query model is implemented as methods or functions within the API of a programming language • No need to write in a separate language like SQL
  • 34. MWLUG 2017 Moving Collaboration Forward Why and How Customers are Using MongoDB
  • 35. MWLUG 2017 Moving Collaboration Forward ThermoFischer • Scientific applications generate humongous data
  • 36. MWLUG 2017 Moving Collaboration Forward ThermoFischer • Why MongoDB was chosen – Performance and scalability – Reliability – Developer productivity – Cost effective – Runs anywhere – Rich set of features – Achievement of legal and regulatory approval
  • 37. MWLUG 2017 Moving Collaboration Forward CoreLogic
  • 38. MWLUG 2017 Moving Collaboration Forward CoreLogic
  • 39. MWLUG 2017 Moving Collaboration Forward CoreLogic • Efficient support for geospatial information – Store latitude, longitude and other geo data – Specialized geospatial index for fast search • Search by location or area (polygon, circle) – Geospatial operators used: • $geoWithin • $GeoIntersects • $near
  • 41. MWLUG 2017 Moving Collaboration Forward eHarmony • Goals of redesign – Simplified communication flow – Realtime messaging system – Extend system to support richer content types • Giphy • Video/Photos • Stickers – Support various custom business requirements – Improved user experience
  • 42. MWLUG 2017 Moving Collaboration Forward Where to Find More Information
  • 43. MWLUG 2017 Moving Collaboration Forward Where to Find More Information • MongoDB University – university.mongodb.com • YouTube tutorials – youtube.com/mongodb • Advocacy Hub – advocacy.mongodb.com