SlideShare a Scribd company logo
1 of 26
Introduction to NoSQL and
MongoDB
Eng. Ahmed Farag
Outlines
• NOSQL
• MongoDB
2/15/2018 2
Introduction to NoSQL
• a database used to manage huge sets of
unstructured data, where in the data is not
stored in tabular relations like relational
databases
2/15/2018 3
Introduction to NoSQL
• NoSQL database is designed to overcome the
Performance, Scalability, Data Modelling and
Distribution limitations that are seen in the
Relational Databases.
2/15/2018 4
What is Structured Data?
• Structured data is usually text files, with
defined column titles and data in rows. Such
data can easily be visualized in form of charts
and can be processed using data mining tools.
2/15/2018 5
What is Unstructured Data?
• Unstructured data can be anything like video file,
image file, PDF, Emails etc. What does these files
have in common, nothing.
• Structured Information can be extracted from
unstructured data, but the process is time
consuming. And as more and more modern data is
unstructured, there was a need to have something to
store such data for growing applications, hence
setting path for NoSQL.
2/15/2018 6
NoSQL Database Types
• Document (MongoDB)
• Graph
• Key-Value
• Wide-column
2/15/2018 7
Advantages of NoSQL Databases
• Dynamic Schemas
• Sharding
• Replication
• Integrated Caching
2/15/2018 8
Dynamic Schemas
• In Relational Databases like Oracle, MySQL we define
table structures, right?
• For example, if we want to save records of Student
Data, then we will have to create a table named
Student, add columns to it, like student_id,
student_name etc, this is called defined schema,
where in we define the structure before saving any
data.
2/15/2018 9
Dynamic Schemas con…
• If in future we plan to add some more related data in
our Student table, then we will have to add a new
column to our table. Which is easy, if we have less
data in our tables, but what if we have millions of
records. Migration to the updated schema would be
a hectic job.
• NoSQL databases solve this problem, as in a NoSQL
database, schema definition is not required.
2/15/2018 10
Sharding
• In Sharding, large databases are partitioned into small,
faster and easily manageable databases.
• The (classic) Relational Databases follow a vertical
architecture where in a single server holds the data, as
all the data is related.
• Relational Databases does not provide Sharding feature
by default, to achieve this a lot of efforts has to be put
in, because transactional integrity(Inserting/Updating
data in transactions), multiple table JOINS etc cannot
be easily achieved in distributed architecture in case of
Relational Databases
2/15/2018 11
Sharding con…
• NoSQL Databases have the Sharding feature as
default. No additional efforts required. They
automatically spread the data across servers,
fetch the data in the fastest time from the
server.
2/15/2018 12
Replication
• Auto data replication is also supported in
NoSQL databases by default. Hence, if one DB
server goes down, data is restored using its
copy created on another server in network
2/15/2018 13
Integrated Caching
• Many NoSQL databases have support for
Integrated Caching, where in the frequently
demanded data is stored in cache to make the
queries faster.
2/15/2018 14
CAP theory for NoSQL
• Consistency
• Availability
• Partitioning tolerance
• How it is interpreted:
– You must always give something up: consistency,
availability or tolerance to failure and
reconfiguration
Outlines
• NOSQL
• MongoDB
2/15/2018 16
MongoDB - NoSQL Database
• is a NoSQL database written in C++ language.
• stores the data in form of key-value pairs.
• MongoDB is a document oriented database where it
stores data in collections instead of tables.
• The best part of MongoDB is that the drivers are
available for almost all the popular programming
languages.
2/15/2018 17
MongoDB - NoSQL Database Con…
• provides high performance and scalability along with
data modelling and data management of huge sets of
data in an enterprise application.
• provides the feature of Auto-Scaling.
• MongoDB is a cross platform database and can be
installed across different platforms like Windows,
Linux etc.
2/15/2018 18
Document based storage
• A Document is nothing but a data structure with name-
value pairs like in JSON. It is very easy to map any custom
Object of any programming language with a MongoDB
Document.
• For example : Student object has attributes name , rollno
and subjects , where subjects is a List.
• Document for Student in MongoDB will be like :
{
name : "Stduytonight",
rollno : 1,
subjects : ["C Language", "C++", "Core Java"]
}
2/15/2018 19
Key Features of MongoDB
• MongoDB provides high performance.
• Input/output operations are lesser than relational databases due
to support of embedded documents(data models) and Select
queries are also faster as Indexes in MongoDB supports faster
queries.
2/15/2018 20
Key Features of MongoDB
• MongoDB has a rich Query Language
• supporting all the major CRUD operations. The Query Language
also provides good Text Search and Aggregation features.
• Horizontal Scalability is possible due to Sharding.
• Auto Replication feature of MongoDB leads to High
Availability.
• It provides an automatic failover mechanism, as data is restored
through backup(replica) copy if server fails
2/15/2018 21
Organizations that use MongoDB
• some of the big and notable organizations
which are using MongoDB as database for
most of their business applications.
– Adobe
– LinkedIn
– McAfee
– Four Square
– eBay
– SAP
2/15/2018 22
Install
• Download and install suitable package for
each platform [Windows, Linux, Mac OSX,
Solaris]
• Create a folder e.g. C:mongodb
• Go to bin of installation folder.
• Run mongod.exe then mongo.exe
• Make sure that mongod.exe (MongoDB
Server) is running without any problems
before running mongo.exe
Install – create data directory
Processes & configuration
• Mongod – Database instance
– It is the primary daemon process for the
MongoDB system. It handles data requests,
manages data access, and performs background
management operations
• Mongos – Sharding processes
• Mongo – an interactive shell ( a client)
– Fully functional JavaScript environment for use
with a MongoDB
The mongo shell
• The mongo shell is an interactive JavaScript
interface to MongoDB.
• We can use the mongo shell to query and
update data as well as perform administrative
operations
2/15/2018 26

More Related Content

What's hot

NoSQL - 05March2014 Seminar
NoSQL - 05March2014 SeminarNoSQL - 05March2014 Seminar
NoSQL - 05March2014 SeminarJainul Musani
 
Appache Cassandra
Appache Cassandra  Appache Cassandra
Appache Cassandra nehabsairam
 
Data Modeling for NoSQL
Data Modeling for NoSQLData Modeling for NoSQL
Data Modeling for NoSQLTony Tam
 
SQL vs NoSQL: Big Data Adoption & Success in the Enterprise
SQL vs NoSQL: Big Data Adoption & Success in the EnterpriseSQL vs NoSQL: Big Data Adoption & Success in the Enterprise
SQL vs NoSQL: Big Data Adoption & Success in the EnterpriseAnita Luthra
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQLbalwinders
 
9. Document Oriented Databases
9. Document Oriented Databases9. Document Oriented Databases
9. Document Oriented DatabasesFabio Fumarola
 
NoSQL Data Architecture Patterns
NoSQL Data ArchitecturePatternsNoSQL Data ArchitecturePatterns
NoSQL Data Architecture PatternsMaynooth University
 
Accelerating Delivery of Data Products - The EBSCO Way
Accelerating Delivery of Data Products - The EBSCO WayAccelerating Delivery of Data Products - The EBSCO Way
Accelerating Delivery of Data Products - The EBSCO WayMongoDB
 
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 ModelingDATAVERSITY
 
Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020Julien Le Dem
 

What's hot (20)

Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 
NOSQL vs SQL
NOSQL vs SQLNOSQL vs SQL
NOSQL vs SQL
 
NoSQL Consepts
NoSQL ConseptsNoSQL Consepts
NoSQL Consepts
 
NoSQL - 05March2014 Seminar
NoSQL - 05March2014 SeminarNoSQL - 05March2014 Seminar
NoSQL - 05March2014 Seminar
 
Rdbms vs. no sql
Rdbms vs. no sqlRdbms vs. no sql
Rdbms vs. no sql
 
Appache Cassandra
Appache Cassandra  Appache Cassandra
Appache Cassandra
 
NoSQL databases
NoSQL databasesNoSQL databases
NoSQL databases
 
Data Modeling for NoSQL
Data Modeling for NoSQLData Modeling for NoSQL
Data Modeling for NoSQL
 
NoSQL
NoSQLNoSQL
NoSQL
 
Difficult to processed by
Difficult to processed byDifficult to processed by
Difficult to processed by
 
SQL vs NoSQL: Big Data Adoption & Success in the Enterprise
SQL vs NoSQL: Big Data Adoption & Success in the EnterpriseSQL vs NoSQL: Big Data Adoption & Success in the Enterprise
SQL vs NoSQL: Big Data Adoption & Success in the Enterprise
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 
9. Document Oriented Databases
9. Document Oriented Databases9. Document Oriented Databases
9. Document Oriented Databases
 
Key-Value NoSQL Database
Key-Value NoSQL DatabaseKey-Value NoSQL Database
Key-Value NoSQL Database
 
NoSQL Data Architecture Patterns
NoSQL Data ArchitecturePatternsNoSQL Data ArchitecturePatterns
NoSQL Data Architecture Patterns
 
Nosql data models
Nosql data modelsNosql data models
Nosql data models
 
Accelerating Delivery of Data Products - The EBSCO Way
Accelerating Delivery of Data Products - The EBSCO WayAccelerating Delivery of Data Products - The EBSCO Way
Accelerating Delivery of Data Products - The EBSCO Way
 
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
 
Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020Data platform architecture principles - ieee infrastructure 2020
Data platform architecture principles - ieee infrastructure 2020
 

Similar to Introduction to NoSQL and MongoDB

NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabasesAdi Challa
 
MongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data scienceMongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data sciencebitragowthamkumar1
 
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...GoQA
 
Presentation On NoSQL Databases
Presentation On NoSQL DatabasesPresentation On NoSQL Databases
Presentation On NoSQL DatabasesAbiral Gautam
 
Sql vs NO-SQL database differences explained
Sql vs NO-SQL database differences explainedSql vs NO-SQL database differences explained
Sql vs NO-SQL database differences explainedSatya Pal
 
SQL vs MongoDB
SQL vs MongoDBSQL vs MongoDB
SQL vs MongoDBcalltutors
 
Chapter1: NoSQL: It’s about making intelligent choices
Chapter1: NoSQL: It’s about making intelligent choicesChapter1: NoSQL: It’s about making intelligent choices
Chapter1: NoSQL: It’s about making intelligent choicesMaynooth University
 
MONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASE
MONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASEMONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASE
MONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASEvasustudy176
 
MongoDB 2.4 and spring data
MongoDB 2.4 and spring dataMongoDB 2.4 and spring data
MongoDB 2.4 and spring dataJimmy Ray
 
Everything You Need to Know About MongoDB Development.pptx
Everything You Need to Know About MongoDB Development.pptxEverything You Need to Know About MongoDB Development.pptx
Everything You Need to Know About MongoDB Development.pptx75waytechnologies
 

Similar to Introduction to NoSQL and MongoDB (20)

NoSQLDatabases
NoSQLDatabasesNoSQLDatabases
NoSQLDatabases
 
MongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data scienceMongoDB Lab Manual (1).pdf used in data science
MongoDB Lab Manual (1).pdf used in data science
 
UNIT-2.pptx
UNIT-2.pptxUNIT-2.pptx
UNIT-2.pptx
 
the rising no sql technology
the rising no sql technologythe rising no sql technology
the rising no sql technology
 
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
ГАННА КАПЛУН «noSQL vs SQL: порівняння використання реляційних та нереляційни...
 
Presentation On NoSQL Databases
Presentation On NoSQL DatabasesPresentation On NoSQL Databases
Presentation On NoSQL Databases
 
NoSQL
NoSQLNoSQL
NoSQL
 
Sql vs NO-SQL database differences explained
Sql vs NO-SQL database differences explainedSql vs NO-SQL database differences explained
Sql vs NO-SQL database differences explained
 
SQL vs MongoDB
SQL vs MongoDBSQL vs MongoDB
SQL vs MongoDB
 
Chapter1: NoSQL: It’s about making intelligent choices
Chapter1: NoSQL: It’s about making intelligent choicesChapter1: NoSQL: It’s about making intelligent choices
Chapter1: NoSQL: It’s about making intelligent choices
 
No sql database
No sql databaseNo sql database
No sql database
 
MONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASE
MONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASEMONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASE
MONGODB VASUDEV PRAJAPATI DOCUMENTBASE DATABASE
 
Mongo db intro.pptx
Mongo db intro.pptxMongo db intro.pptx
Mongo db intro.pptx
 
NoSQL and MongoDB
NoSQL and MongoDBNoSQL and MongoDB
NoSQL and MongoDB
 
MongoDB 2.4 and spring data
MongoDB 2.4 and spring dataMongoDB 2.4 and spring data
MongoDB 2.4 and spring data
 
A peek into the future
A peek into the futureA peek into the future
A peek into the future
 
NoSQL Seminer
NoSQL SeminerNoSQL Seminer
NoSQL Seminer
 
Report 2.0.docx
Report 2.0.docxReport 2.0.docx
Report 2.0.docx
 
Everything You Need to Know About MongoDB Development.pptx
Everything You Need to Know About MongoDB Development.pptxEverything You Need to Know About MongoDB Development.pptx
Everything You Need to Know About MongoDB Development.pptx
 
Database Technologies
Database TechnologiesDatabase Technologies
Database Technologies
 

More from Ahmed Farag

Sql modifying data - MYSQL part I
Sql modifying data - MYSQL part ISql modifying data - MYSQL part I
Sql modifying data - MYSQL part IAhmed Farag
 
MYSQL using set operators
MYSQL using set operatorsMYSQL using set operators
MYSQL using set operatorsAhmed Farag
 
MYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-havingMYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-havingAhmed Farag
 
Introduction to OOP concepts
Introduction to OOP conceptsIntroduction to OOP concepts
Introduction to OOP conceptsAhmed Farag
 
Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)Ahmed Farag
 
C++ Files and Streams
C++ Files and Streams C++ Files and Streams
C++ Files and Streams Ahmed Farag
 
intro to pointer C++
intro to  pointer C++intro to  pointer C++
intro to pointer C++Ahmed Farag
 

More from Ahmed Farag (14)

Intro to php
Intro to phpIntro to php
Intro to php
 
MYSql manage db
MYSql manage dbMYSql manage db
MYSql manage db
 
Normalization
NormalizationNormalization
Normalization
 
Sql modifying data - MYSQL part I
Sql modifying data - MYSQL part ISql modifying data - MYSQL part I
Sql modifying data - MYSQL part I
 
MYSQL using set operators
MYSQL using set operatorsMYSQL using set operators
MYSQL using set operators
 
MYSQL join
MYSQL joinMYSQL join
MYSQL join
 
MYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-havingMYSQL single rowfunc-multirowfunc-groupby-having
MYSQL single rowfunc-multirowfunc-groupby-having
 
Introduction to OOP concepts
Introduction to OOP conceptsIntroduction to OOP concepts
Introduction to OOP concepts
 
Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)Introduction to object-oriented analysis and design (OOA/D)
Introduction to object-oriented analysis and design (OOA/D)
 
C++ Files and Streams
C++ Files and Streams C++ Files and Streams
C++ Files and Streams
 
OOP C++
OOP C++OOP C++
OOP C++
 
Functions C++
Functions C++Functions C++
Functions C++
 
intro to pointer C++
intro to  pointer C++intro to  pointer C++
intro to pointer C++
 
Intro to C++
Intro to C++Intro to C++
Intro to C++
 

Recently uploaded

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
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, Adobeapidays
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 

Recently uploaded (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 

Introduction to NoSQL and MongoDB

  • 1. Introduction to NoSQL and MongoDB Eng. Ahmed Farag
  • 3. Introduction to NoSQL • a database used to manage huge sets of unstructured data, where in the data is not stored in tabular relations like relational databases 2/15/2018 3
  • 4. Introduction to NoSQL • NoSQL database is designed to overcome the Performance, Scalability, Data Modelling and Distribution limitations that are seen in the Relational Databases. 2/15/2018 4
  • 5. What is Structured Data? • Structured data is usually text files, with defined column titles and data in rows. Such data can easily be visualized in form of charts and can be processed using data mining tools. 2/15/2018 5
  • 6. What is Unstructured Data? • Unstructured data can be anything like video file, image file, PDF, Emails etc. What does these files have in common, nothing. • Structured Information can be extracted from unstructured data, but the process is time consuming. And as more and more modern data is unstructured, there was a need to have something to store such data for growing applications, hence setting path for NoSQL. 2/15/2018 6
  • 7. NoSQL Database Types • Document (MongoDB) • Graph • Key-Value • Wide-column 2/15/2018 7
  • 8. Advantages of NoSQL Databases • Dynamic Schemas • Sharding • Replication • Integrated Caching 2/15/2018 8
  • 9. Dynamic Schemas • In Relational Databases like Oracle, MySQL we define table structures, right? • For example, if we want to save records of Student Data, then we will have to create a table named Student, add columns to it, like student_id, student_name etc, this is called defined schema, where in we define the structure before saving any data. 2/15/2018 9
  • 10. Dynamic Schemas con… • If in future we plan to add some more related data in our Student table, then we will have to add a new column to our table. Which is easy, if we have less data in our tables, but what if we have millions of records. Migration to the updated schema would be a hectic job. • NoSQL databases solve this problem, as in a NoSQL database, schema definition is not required. 2/15/2018 10
  • 11. Sharding • In Sharding, large databases are partitioned into small, faster and easily manageable databases. • The (classic) Relational Databases follow a vertical architecture where in a single server holds the data, as all the data is related. • Relational Databases does not provide Sharding feature by default, to achieve this a lot of efforts has to be put in, because transactional integrity(Inserting/Updating data in transactions), multiple table JOINS etc cannot be easily achieved in distributed architecture in case of Relational Databases 2/15/2018 11
  • 12. Sharding con… • NoSQL Databases have the Sharding feature as default. No additional efforts required. They automatically spread the data across servers, fetch the data in the fastest time from the server. 2/15/2018 12
  • 13. Replication • Auto data replication is also supported in NoSQL databases by default. Hence, if one DB server goes down, data is restored using its copy created on another server in network 2/15/2018 13
  • 14. Integrated Caching • Many NoSQL databases have support for Integrated Caching, where in the frequently demanded data is stored in cache to make the queries faster. 2/15/2018 14
  • 15. CAP theory for NoSQL • Consistency • Availability • Partitioning tolerance • How it is interpreted: – You must always give something up: consistency, availability or tolerance to failure and reconfiguration
  • 17. MongoDB - NoSQL Database • is a NoSQL database written in C++ language. • stores the data in form of key-value pairs. • MongoDB is a document oriented database where it stores data in collections instead of tables. • The best part of MongoDB is that the drivers are available for almost all the popular programming languages. 2/15/2018 17
  • 18. MongoDB - NoSQL Database Con… • provides high performance and scalability along with data modelling and data management of huge sets of data in an enterprise application. • provides the feature of Auto-Scaling. • MongoDB is a cross platform database and can be installed across different platforms like Windows, Linux etc. 2/15/2018 18
  • 19. Document based storage • A Document is nothing but a data structure with name- value pairs like in JSON. It is very easy to map any custom Object of any programming language with a MongoDB Document. • For example : Student object has attributes name , rollno and subjects , where subjects is a List. • Document for Student in MongoDB will be like : { name : "Stduytonight", rollno : 1, subjects : ["C Language", "C++", "Core Java"] } 2/15/2018 19
  • 20. Key Features of MongoDB • MongoDB provides high performance. • Input/output operations are lesser than relational databases due to support of embedded documents(data models) and Select queries are also faster as Indexes in MongoDB supports faster queries. 2/15/2018 20
  • 21. Key Features of MongoDB • MongoDB has a rich Query Language • supporting all the major CRUD operations. The Query Language also provides good Text Search and Aggregation features. • Horizontal Scalability is possible due to Sharding. • Auto Replication feature of MongoDB leads to High Availability. • It provides an automatic failover mechanism, as data is restored through backup(replica) copy if server fails 2/15/2018 21
  • 22. Organizations that use MongoDB • some of the big and notable organizations which are using MongoDB as database for most of their business applications. – Adobe – LinkedIn – McAfee – Four Square – eBay – SAP 2/15/2018 22
  • 23. Install • Download and install suitable package for each platform [Windows, Linux, Mac OSX, Solaris] • Create a folder e.g. C:mongodb • Go to bin of installation folder. • Run mongod.exe then mongo.exe • Make sure that mongod.exe (MongoDB Server) is running without any problems before running mongo.exe
  • 24. Install – create data directory
  • 25. Processes & configuration • Mongod – Database instance – It is the primary daemon process for the MongoDB system. It handles data requests, manages data access, and performs background management operations • Mongos – Sharding processes • Mongo – an interactive shell ( a client) – Fully functional JavaScript environment for use with a MongoDB
  • 26. The mongo shell • The mongo shell is an interactive JavaScript interface to MongoDB. • We can use the mongo shell to query and update data as well as perform administrative operations 2/15/2018 26

Editor's Notes

  1. You must be wondering what does dynamic schema means? In Relational Databases like Oracle, MySQL we define table structures, right? For example, if we want to save records of Student Data, then we will have to create a table named Student, add columns to it, like student_id, student_name etc, this is called defined schema, where in we define the structure before saving any data. If in future we plan to add some more related data in our Student table, then we will have to add a new column to our table. Which is easy, if we have less data in our tables, but what if we have millions of records. Migration to the updated schema would be a hectic job. NoSQL databases solve this problem, as in a NoSQL database, schema definition is not required ----------------------------