SlideShare ist ein Scribd-Unternehmen logo
1 von 15
An Agile NoSQL Database



Gaurav Awasthi
Technology Evangelist
gawasthi@equalexperts.com
Big Data - The New World Order
•   A massive volume of both structured and unstructured data that it's
    difficult to process using traditional database and software techniques

•   As of 2012, every day 2.5 quintillion bytes of data were created

•   Data Source:
     – Climate sensors
     – Social media
     – Digital pictures and videos
     – Purchase transaction records
     – Cell phone GPS signals

•   Characteristics : Volume, Velocity and Variety

•   Key Usage: leverage data-driven strategies to innovate, compete, and
    capture value from deep and up-to-real-time information
NoSQL
Defining Characteristics

– Scaling out on commodity hardware

– Aggregate structure

– Schema-less attitude

– Impedance Mismatch : Relational model in-memory data structures

– Big Data : Massive data being stored and transacted

– Reduced Data Management and Tuning Requirements

– Eventually consistent / BASE (not ACID)
Mongo DB
• Open-source, Document-oriented, popular for its agile and scalable
  approach
• Notable Features :
   – JSON/BSON data model with dynamic schema

   – Auto-sharding for horizontal scalability

   – Built-in replication with automated fail-overs

   – Full, flexible index support including secondary indexes

   – Rich document-based queries

   – Aggregation framework and Map / Reduce

   – GridFS for large file storage
Agile & MongoDB
Characteristics supporting Agility
  – Allows dynamic schema (schemaless)

  – JSON format, which maps well to object-style data.

  – Simplified db tuning

  – Cost Effective and Simple replica sets

  – Easy scale out due to simplified sharding mechanism

  – Rich content using GridFS
A Demo for Schema-less way
A Demo Query Plan and DB
        Tuning
Replication

• Replica set – a mongod cluster

• Ensures High Availability, Redundancy, Automated Fail-
  over
• Writes to the Primary, Reads from all

• Asynchronous replication

• In conventional terms, more like Master/Slave replication

• Members can be configured to be: Secondary only /
  Non- Voting / Hidden / Arbiters / Delayed
Elastic Architecture
A Demo for Replica Set
• Run the 3 mongod processes

• Demo that they are running on different ports using ps –ef

• Initiate the repl set and add members

• Demo which ones are primary and secondary using rs.status()

• Now insert docs into a collection in primary

• Demo that its replicated to secondary

• Thereby proving how straight fwd is replication

• Briefly touch upon the steps for sharding too
Case Study – E-Commerce Shop
 Architecture Diagram




Product supplier
                   catalog      App                External Feeds
                             (container)   Mongo



                        Payment Gateway
Domain model
JSON structure
{"_id" :                             "compatibleHandsets" : [{
   ObjectId("5082626144ae3a6879             "manufacturer" : {
   19c094"),                                    "name" : "Apple",
"name" : "iPhone 5 Pop Blue Case",              "canonicalName" : "apple"
                                               },
"canonicalName" : "iphone-5-pop-
   blue-case",                              "model" : "iPhone 5 16GB",
                                            "name" :
"retailPrice" : 19.99,                   "Apple_iPhone_5_16GB",
"productCode" : "G4IC542G",                 "canonicalName" :
"category" : {                           "apple_iphone_5_16gb"
                                     }],
         "categoryCode" : "CAS",
        "name" : "Cases",
                                     review_ids : ["review_id1",
        "canonicalName" : "cases"       "review_id2"]
},                                   }
Design decisions with Mongo

• Agile incremental releases

• Unstructured data from multiple suppliers

• GridFS : Stores large binary objects

• Spring Data Services

• Embedding and linking documents

• Easy replication set up for AWS
Conclusion and Thanks
MongoDB: the right persistence tool for Agile Development for multitude of
business problems in the new world order




 References:
 •
     Mongodb.org

Weitere ähnliche Inhalte

Was ist angesagt?

Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
Fwdays
 
Common MongoDB Use Cases
Common MongoDB Use CasesCommon MongoDB Use Cases
Common MongoDB Use Cases
DATAVERSITY
 

Was ist angesagt? (20)

Big Challenges in Data Modeling: NoSQL and Data Modeling
Big Challenges in Data Modeling: NoSQL and Data ModelingBig Challenges in Data Modeling: NoSQL and Data Modeling
Big Challenges in Data Modeling: NoSQL and Data Modeling
 
Performance comparison: Multi-Model vs. MongoDB and Neo4j
Performance comparison: Multi-Model vs. MongoDB and Neo4jPerformance comparison: Multi-Model vs. MongoDB and Neo4j
Performance comparison: Multi-Model vs. MongoDB and Neo4j
 
Bigdata antipatterns
Bigdata antipatternsBigdata antipatterns
Bigdata antipatterns
 
Webinar: High Performance MongoDB Applications with IBM POWER8
Webinar: High Performance MongoDB Applications with IBM POWER8Webinar: High Performance MongoDB Applications with IBM POWER8
Webinar: High Performance MongoDB Applications with IBM POWER8
 
Nosql data models
Nosql data modelsNosql data models
Nosql data models
 
MongoDB Pros and Cons
MongoDB Pros and ConsMongoDB Pros and Cons
MongoDB Pros and Cons
 
Practical Use of a NoSQL Database
Practical Use of a NoSQL DatabasePractical Use of a NoSQL Database
Practical Use of a NoSQL Database
 
NoSQL for SQL Users
NoSQL for SQL UsersNoSQL for SQL Users
NoSQL for SQL Users
 
Key-Value NoSQL Database
Key-Value NoSQL DatabaseKey-Value NoSQL Database
Key-Value NoSQL Database
 
Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
Дмитрий Лавриненко "Blockchain for Identity Management, based on Fast Big Data"
 
Practical Use of a NoSQL
Practical Use of a NoSQLPractical Use of a NoSQL
Practical Use of a NoSQL
 
Prepare for Peak Holiday Season with MongoDB
Prepare for Peak Holiday Season with MongoDBPrepare for Peak Holiday Season with MongoDB
Prepare for Peak Holiday Season with MongoDB
 
Survey of the Microsoft Azure Data Landscape
Survey of the Microsoft Azure Data LandscapeSurvey of the Microsoft Azure Data Landscape
Survey of the Microsoft Azure Data Landscape
 
NoSQL and MongoDB Introdction
NoSQL and MongoDB IntrodctionNoSQL and MongoDB Introdction
NoSQL and MongoDB Introdction
 
MongoDB Certification Study Group - May 2016
MongoDB Certification Study Group - May 2016MongoDB Certification Study Group - May 2016
MongoDB Certification Study Group - May 2016
 
Common MongoDB Use Cases
Common MongoDB Use CasesCommon MongoDB Use Cases
Common MongoDB Use Cases
 
Building a Scalable and Modern Infrastructure at CARFAX
Building a Scalable and Modern Infrastructure at CARFAXBuilding a Scalable and Modern Infrastructure at CARFAX
Building a Scalable and Modern Infrastructure at CARFAX
 
Introduction to Azure DocumentDB
Introduction to Azure DocumentDBIntroduction to Azure DocumentDB
Introduction to Azure DocumentDB
 
NoSQL Tel Aviv Meetup#1: NoSQL Data Modeling
NoSQL Tel Aviv Meetup#1: NoSQL Data ModelingNoSQL Tel Aviv Meetup#1: NoSQL Data Modeling
NoSQL Tel Aviv Meetup#1: NoSQL Data Modeling
 
An Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDBAn Enterprise Architect's View of MongoDB
An Enterprise Architect's View of MongoDB
 

Ă„hnlich wie MongoDB - An Agile NoSQL Database

MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data Presentation
MongoDB
 
L’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneL’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazione
MongoDB
 
ArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQLArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQL
ArangoDB Database
 
Mongodb at-gilt-groupe-seattle-2012-09-14-final
Mongodb at-gilt-groupe-seattle-2012-09-14-finalMongodb at-gilt-groupe-seattle-2012-09-14-final
Mongodb at-gilt-groupe-seattle-2012-09-14-final
MongoDB
 

Ă„hnlich wie MongoDB - An Agile NoSQL Database (20)

MongoDB Tick Data Presentation
MongoDB Tick Data PresentationMongoDB Tick Data Presentation
MongoDB Tick Data Presentation
 
L’architettura di Classe Enterprise di Nuova Generazione
L’architettura di Classe Enterprise di Nuova GenerazioneL’architettura di Classe Enterprise di Nuova Generazione
L’architettura di Classe Enterprise di Nuova Generazione
 
Mongo DB
Mongo DB Mongo DB
Mongo DB
 
Webinar: Scaling MongoDB
Webinar: Scaling MongoDBWebinar: Scaling MongoDB
Webinar: Scaling MongoDB
 
L’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazioneL’architettura di classe enterprise di nuova generazione
L’architettura di classe enterprise di nuova generazione
 
MongoDB Days Germany: Data Processing with MongoDB
MongoDB Days Germany: Data Processing with MongoDBMongoDB Days Germany: Data Processing with MongoDB
MongoDB Days Germany: Data Processing with MongoDB
 
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data LakesWebinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
Webinar: Enterprise Data Management in the Era of MongoDB and Data Lakes
 
Dataweek-Talk-2014
Dataweek-Talk-2014Dataweek-Talk-2014
Dataweek-Talk-2014
 
Agility and Scalability with MongoDB
Agility and Scalability with MongoDBAgility and Scalability with MongoDB
Agility and Scalability with MongoDB
 
L'architettura di classe enterprise di nuova generazione - Massimo Brignoli
L'architettura di classe enterprise di nuova generazione - Massimo BrignoliL'architettura di classe enterprise di nuova generazione - Massimo Brignoli
L'architettura di classe enterprise di nuova generazione - Massimo Brignoli
 
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 Basics
MongoDB BasicsMongoDB Basics
MongoDB Basics
 
Mongodb
MongodbMongodb
Mongodb
 
ArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQLArangoDB – A different approach to NoSQL
ArangoDB – A different approach to NoSQL
 
No SQL and MongoDB - Hyderabad Scalability Meetup
No SQL and MongoDB - Hyderabad Scalability MeetupNo SQL and MongoDB - Hyderabad Scalability Meetup
No SQL and MongoDB - Hyderabad Scalability Meetup
 
Mongodb at-gilt-groupe-seattle-2012-09-14-final
Mongodb at-gilt-groupe-seattle-2012-09-14-finalMongodb at-gilt-groupe-seattle-2012-09-14-final
Mongodb at-gilt-groupe-seattle-2012-09-14-final
 
Python Ireland Conference 2016 - Python and MongoDB Workshop
Python Ireland Conference 2016 - Python and MongoDB WorkshopPython Ireland Conference 2016 - Python and MongoDB Workshop
Python Ireland Conference 2016 - Python and MongoDB Workshop
 
Mongo db transcript
Mongo db transcriptMongo db transcript
Mongo db transcript
 
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB WorldNoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
NoSQL Analytics: JSON Data Analysis and Acceleration in MongoDB World
 
When to Use MongoDB
When to Use MongoDBWhen to Use MongoDB
When to Use MongoDB
 

KĂĽrzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

KĂĽrzlich hochgeladen (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

MongoDB - An Agile NoSQL Database

  • 1. An Agile NoSQL Database Gaurav Awasthi Technology Evangelist gawasthi@equalexperts.com
  • 2. Big Data - The New World Order • A massive volume of both structured and unstructured data that it's difficult to process using traditional database and software techniques • As of 2012, every day 2.5 quintillion bytes of data were created • Data Source: – Climate sensors – Social media – Digital pictures and videos – Purchase transaction records – Cell phone GPS signals • Characteristics : Volume, Velocity and Variety • Key Usage: leverage data-driven strategies to innovate, compete, and capture value from deep and up-to-real-time information
  • 3. NoSQL Defining Characteristics – Scaling out on commodity hardware – Aggregate structure – Schema-less attitude – Impedance Mismatch : Relational model in-memory data structures – Big Data : Massive data being stored and transacted – Reduced Data Management and Tuning Requirements – Eventually consistent / BASE (not ACID)
  • 4. Mongo DB • Open-source, Document-oriented, popular for its agile and scalable approach • Notable Features : – JSON/BSON data model with dynamic schema – Auto-sharding for horizontal scalability – Built-in replication with automated fail-overs – Full, flexible index support including secondary indexes – Rich document-based queries – Aggregation framework and Map / Reduce – GridFS for large file storage
  • 5. Agile & MongoDB Characteristics supporting Agility – Allows dynamic schema (schemaless) – JSON format, which maps well to object-style data. – Simplified db tuning – Cost Effective and Simple replica sets – Easy scale out due to simplified sharding mechanism – Rich content using GridFS
  • 6. A Demo for Schema-less way
  • 7. A Demo Query Plan and DB Tuning
  • 8. Replication • Replica set – a mongod cluster • Ensures High Availability, Redundancy, Automated Fail- over • Writes to the Primary, Reads from all • Asynchronous replication • In conventional terms, more like Master/Slave replication • Members can be configured to be: Secondary only / Non- Voting / Hidden / Arbiters / Delayed
  • 10. A Demo for Replica Set • Run the 3 mongod processes • Demo that they are running on different ports using ps –ef • Initiate the repl set and add members • Demo which ones are primary and secondary using rs.status() • Now insert docs into a collection in primary • Demo that its replicated to secondary • Thereby proving how straight fwd is replication • Briefly touch upon the steps for sharding too
  • 11. Case Study – E-Commerce Shop Architecture Diagram Product supplier catalog App External Feeds (container) Mongo Payment Gateway
  • 13. JSON structure {"_id" : "compatibleHandsets" : [{ ObjectId("5082626144ae3a6879 "manufacturer" : { 19c094"), "name" : "Apple", "name" : "iPhone 5 Pop Blue Case", "canonicalName" : "apple" }, "canonicalName" : "iphone-5-pop- blue-case", "model" : "iPhone 5 16GB", "name" : "retailPrice" : 19.99, "Apple_iPhone_5_16GB", "productCode" : "G4IC542G", "canonicalName" : "category" : { "apple_iphone_5_16gb" }], "categoryCode" : "CAS", "name" : "Cases", review_ids : ["review_id1", "canonicalName" : "cases" "review_id2"] }, }
  • 14. Design decisions with Mongo • Agile incremental releases • Unstructured data from multiple suppliers • GridFS : Stores large binary objects • Spring Data Services • Embedding and linking documents • Easy replication set up for AWS
  • 15. Conclusion and Thanks MongoDB: the right persistence tool for Agile Development for multitude of business problems in the new world order References: • Mongodb.org

Hinweis der Redaktion

  1. Show the Accessory Shop site and explain the functionality in brief