SlideShare a Scribd company logo
1 of 50
MONGODB
DR.ROOPA R,ISE,BMSCE
Overview
MongoDB is an open-source, document-based NoSQL database.
The following are a few notable features of MongoDB database:
•It is an open-source, cross-platform, NoSQL, document-based database.
•There is no concept of database schema like relational databases. Data is stored
as collections and documents.
•There are no complex joins between collections which are usually done in
relational database tables. A join is generally performed while storing the data by
combining the documents.
•Data is stored in BSON format (Binary encoding of JSON-like documents).
•Data stored in collections need not have a similar structure. One document can
have a certain set of fields, whereas another document can have a completely
different set (both type and amount) of fields.
•MongoDB provides a default database named test. If there is no database
selected while storing data, MongoDB uses this database to store data.
DR.ROOPA R,ISE,BMSCE
FEATURES
DR.ROOPA R,ISE,BMSCE
This is an AdHoc Query as the entire query is known only at the
time of execution depending upon the value of username
passed.
"SELECT * FROM table WHERE name = " + username;
DR.ROOPA R,ISE,BMSCE
Document-Oriented
DR.ROOPA R,ISE,BMSCE
In RDBMS, defining the schema before inserting any record is mandatory, and the
structure of the record being inserted should strictly match with the schema.
RDBMS: Defined the schema for student Table.
CREATE TABLE student( id int PRIMARY KEY NOT
NULL, name varchar(30))
Now, let's try to insert the record
Insert into student values (1,"Kunal");
DR.ROOPA R,ISE,BMSCE
Now, suppose I want to add one more field in the student table. For
that, I have to alter the schema of the student table to do that.
Let's try without altering the schema:
mysql> Insert into student values
(1,"Kunal","kunal@gmail.com");
ERROR 1136 (21S01): Column count doesn't match value
count at row 1
DR.ROOPA R,ISE,BMSCE
Let's try the same thing with MongoDB.
Here, we don't need to create the schema.
There is no concept of a table. In MongoDB, we insert the record in the
collections, and we don't need to define any schema structure for any
operation.
Let's try to insert:
Here, I am inserting in the student collection.
Now let's try to insert the record in student collection with different schema.
DR.ROOPA R,ISE,BMSCE
Now, try to fetch all records.
DR.ROOPA R,ISE,BMSCE
•MongoDB is schema-less.
•There may be a difference between the number of fields,
content, and size of the document from one to other. But in
RDBMS, every record must adhere to a particular
predefined schema.
•MongoDB is horizontally scalable i.e we can add more
servers (sharding) but RDBMS is only vertically scalable i.e
increasing RAM.
•MongoDB emphasizes on the CAP theorem (Consistency,
Availability, and Partition tolerance) but RDBMS
emphasizes ACID properties (Atomicity, Consistency,
Isolation, and Durability).
DR.ROOPA R,ISE,BMSCE
•MongoDB supports JSON query language along with SQL but
RDBMS supports SQL query language only.
•MongoDB is easy to set up, configure, and run in comparison to
the RDBMS. It's Java client is also very easy to use.
•MongoDB is almost 100 times faster than traditional database
system like RDBMS, which is slower in comparison with the NoSQL
databases.
•There is no support for complex joins in MongoDB, but RDBMS
supports complex joins, which can be difficult to understand and
take too much time to execute.
•MongoDB uses internal memory for storing working sets
resulting in faster access time.
•MongoDB supports deep query-ability i.e we can perform
dynamic queries on documents using the document-based query
language that's nearly as powerful as SQL.
•In MongoDB, Conversion/mapping of application objects to
database objects is not needed.
DR.ROOPA R,ISE,BMSCE
Indexing
•Indexing is very important for improving the performances of search queries.
When we continuously perform searches in a document, we should index those
fields that match our search criteria.
•In MongoDB, we can index any field indexed with primary and secondary
indices. Making query searches faster, MongoDB indexing enhances the
performance.
DR.ROOPA R,ISE,BMSCE
Replication
•When it comes to redundancy, replication is the tool that MongoDB
uses. This feature distributes data to multiple machines. I
•t can have primary nodes and their one or more replica sets. Basically,
replication makes ready for contingencies.
•When the primary node is down for some reasons, the secondary node
becomes primary for the instance. This saves our time for maintenance
and makes operations smooth.
DR.ROOPA R,ISE,BMSCE
GridFS
GridFS is a feature of storing and retrieving files. For files larger than 16 MB this
feature is very useful. GridFS divides a document in parts called chunks and
stores them in a separate document. These chunks have a default size of 255kB
except the last chunk.
When we query GridFS for a file, it assembles all the chunks as needed.
DR.ROOPA R,ISE,BMSCE
Sharding
Basically, the concept of sharding comes when we need to deal with larger datasets. This
huge data can cause some problems when a query comes for them. This feature helps to
distribute this problematic data to multiple MongoDB instances.
The collections in the MongoDB which has a larger size are distributed in multiple
collections. These collections are called “shards”. Shards are implemented by clusters.
DR.ROOPA R,ISE,BMSCE
High Performance
MongoDB is an open source database with high performance. This shows high
availability and scalability. It has faster query response because of indexing and
replication. This makes it a better choice for big data and real-time applications.
DR.ROOPA R,ISE,BMSCE
Installing MongoDB
The installation of MongoDB on a local computer.
MongoDB is available in two flavors:
1. Community Edition
2. Enterprise Edition
•The Community edition of MongoDB is open-sourced and freely
available.
• Enterprise edition is licensed and is available with an array of
enterprise-grade features with commercial support.
Step by step instructions on how to download and install the
MongoDB community edition can be found here.
DR.ROOPA R,ISE,BMSCE
At the time of installation, MongoDB provides an option to install MongoDB
Compass, a GUI console to access MongoDB databases.
Alternatively,
the MongoDB database can be accessed from the command line shell as well.
The following is the command-line interface of MongoDB:
DR.ROOPA R,ISE,BMSCE
The following is the Graphical User Interface (MongoDB Compass):
DR.ROOPA R,ISE,BMSCE
MongoDB Components
There are several database components of MongoDB. However,
there are two primary components that are of interest to us.
These two components are:
•mongod: This is the database daemon that runs in the
background.
•mongo: MongoDB shell. This is used to connect to the daemon
and execute various database commands.
DR.ROOPA R,ISE,BMSCE
Understanding MongoDB Storage Structure
However, there is no concept of a schema in MongoDB. It primarily uses the
concept of database, collection, and documents.
Database: A database is a physical container for collections.
Collection: A collection is a group of MongoDB documents. In SQL
terminology, this is similar to a database table.
Document: A document is a set of key-value pairs. In SQL terminology, this is
similar to a row in a database table.
Field: A field is key in a document. In SQL terminology, this is similar to a
column in a database table.
Embedded Document: An embedded document is the joining of multiple
documents.In SQL terminology, this is similar to joining several database
tables.
DR.ROOPA R,ISE,BMSCE
Start using MongoDB
create databases, collections, retrieve data from existing collections
imposing conditions and so on.
Most MongoDB commands are structured with db.<task>(options). In that, Task name
follows a camelCase naming pattern.
For example, to create a new empty collection, we use
db.createCollection(collectionName)
Connecting to MongoDB via MongoDB Shell
Open Command Prompt and type mongo
DR.ROOPA R,ISE,BMSCE
Using Help
MongoDB provides a helpful list of database commands through db.help(). This commands
lists down all major commands with a concise description:
DR.ROOPA R,ISE,BMSCE
Using show
There is also a list of show commands to show various elements such as databases,
collections, users, and others. Following is the list of show commands:
DR.ROOPA R,ISE,BMSCE
For example, we can run show dbs to list all the existing databases:
Creating a MongoDB database
•We can create a new database by specifying use with the
database name.
•If the database exists, it will be used. Otherwise, a new one will
be created.
DR.ROOPA R,ISE,BMSCE
Command: use <dbname>
Command: use <dname>
Creation of a new database
Note that though the database is created, it will not be displayed in show
dbs command until there is at least one collection in it.
DR.ROOPA R,ISE,BMSCE
Dropping a MongoDB database
Switch to the database to be deleted using
use <dbname> command and then run below command:
Command: db.dropDatabase()
DR.ROOPA R,ISE,BMSCE
Creating a Collection
A new collection can be created with the following command.
Command: db.createCollection(name, options)
This creates an empty collection in the selected database
DR.ROOPA R,ISE,BMSCE
A collection can also be capped and we can define the maximum
size and number of documents that can be stored in that collection
with the optional options attribute.
Options:
•Capped: Possible values are true or false. This option decides
whether this collection is capped.
•Size: This option decides the maximum number of documents that
can be stored in this collection.
•Max: This option decides the maximum size in bytes that this
collection can hold. Max option is checked first and then the size is
validated.
DR.ROOPA R,ISE,BMSCE
Dropping a Collection
A collection can be dropped using the following command:
Command: db.<collectionName>.drop()
DR.ROOPA R,ISE,BMSCE
Inserting Documents
A document can be inserted into a collection using insert()
or save() methods
Command: db.<collectionName>.insert()
or
db.<collectionName>.save()
DR.ROOPA R,ISE,BMSCE
Example:
Following example shows how to insert a single document in a collection:
DR.ROOPA R,ISE,BMSCE
Following example shows how to insert multiple documents in a collection:
DR.ROOPA R,ISE,BMSCE
In the above insertion example, we have only supplied two fields which are perfectly valid.
Below is the list of documents present in movies collection:
In none of our documents, we have supplied ObjectId. MongoDB created one for each of
these documents.
DR.ROOPA R,ISE,BMSCE
Finding Documents
Documents from a collection can be retrieved from MongoDB
using find()
Command: db.<collectionName>.find()
1.Find all documents from a collection:
Command: db.<collectionName>.find()
Example: db.movies.find({})
We provide a {} in the find() to retrieve all the documents from a
collection.
In SQL, this is similar to as below:
SELECT * FROM <table>
pretty() is used along with find() to pretty-print the document output
DR.ROOPA R,ISE,BMSCE
DR.ROOPA R,ISE,BMSCE
In MongoDB, you don't need to create collection.
MongoDB creates collection automatically, when you
insert some document.
>db.tp.insert({"name" : “tp"}),
WriteResult({ "nInserted" : 1 })
>show collections
mycol
mycollection system.
indexes
tp
DR.ROOPA R,ISE,BMSCE
You can also pass an array of documents into the insert() method as shown below:
> db.createCollection("post")
> db.post.insert([
{
title: "MongoDB Overview",
description: "MongoDB is no SQL database",
by: “tt",
url: "http://www.tt.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 100
},
{
title: "NoSQL Database",
description: "NoSQL database doesn't have tables",
by: “tt",
url: "http://www.tt.com",
tags: ["mongodb", "database", "NoSQL"],
likes: 20,
comments: [
{
user:"user1",
message: "My first comment",
dateCreated: new Date(2013,11,10,2,35),
DR.ROOPA R,ISE,BMSCE
BulkWriteResult({
"writeErrors" : [ ],
"writeConcernErrors" : [ ],
"nInserted" : 2,
"nUpserted" : 0,
"nMatched" : 0,
"nModified" : 0,
"nRemoved" : 0,
"upserted" : [ ]
})
DR.ROOPA R,ISE,BMSCE
The insertOne() method:
The basic syntax of insert() command is as follows −
>db.COLLECTION_NAME.insertOne(document)
db.createCollection("empDetails")
{ "ok" : 1 }
> db.empDetails.insertOne(
 {
 First_Name: "Radhika",
 Last_Name: "Sharma",
 Date_Of_Birth: "1995-09-26",
 e_mail: "radhika_sharma.123@gmail.com",
 phone: "9848022338"
 })
{
 "acknowledged" : true,
 "insertedId" : ObjectId("5dd62b4070fb13eec3963bea")
}
>
_id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes
incrementer)
DR.ROOPA R,ISE,BMSCE
The insertMany() method
>db.empDetails.insertMany(
[
{
First_Name: "Radhika",
Last_Name: "Sharma",
Date_Of_Birth: "1995-09-26",
e_mail: "radhika_sharma.123@gmail.com",
phone: "9000012345"
},
{
First_Name: "Rachel",
Last_Name: "Christopher",
Date_Of_Birth: "1990-02-16",
e_mail: "Rachel_Christopher.123@gmail.com",
phone: "9000054321"
},
{
First_Name: "Fathima",
Last_Name: "Sheik",
Date_Of_Birth: "1990-02-16",
e_mail: "Fathima_Sheik.123@gmail.com",
phone: "9000054321"
}
]
)
{
"acknowledged" : true, DR.ROOPA R,ISE,BMSCE
The find() Method:
Similar to SELECT * FROM <table>
Syntax
The basic syntax of find() method is as follows −
>db.COLLECTION_NAME.find()
find() method will display all the documents in a non-structured way.
The pretty() Method
To display the results in a formatted way, you can use pretty() method.
Syntax
>db.COLLECTION_NAME.find().pretty()
The findOne() method
Apart from the find() method, there is findOne() method, that returns only one
document.
Syntax
>db.COLLECTIONNAME.findOne()
Ex:
>db.mycol.findOne({title: "MongoDB Overview"})
{ "_id" : ObjectId("5dd6542170fb13eec3963bf0"),
"title" : "MongoDB Overview",
"description" : "MongoDB is no SQL database",
DR.ROOPA R,ISE,BMSCE
Using clauses to the find method
SELECT col1, col2 FROM table WHERE <condition(s)>
MongnDB let us add various clauses in our find() method to fetch data from a
collection:
Command: db.coll.find({key:value})
Example: db.movies.find({‘title’ : ‘Salt’})
o/p:
DR.ROOPA R,ISE,BMSCE
Less Than
Command: db.coll.find({key : {$lt: value}})
Example: db.movies.find({releaseYear : {$lt: 2016}})
DR.ROOPA R,ISE,BMSCE
Operation Syntax Example RDBMS Equivalent
Equality {<key>:<value>}} db.mycol.find({"by":"
tt"}).pretty()
where by = 'tt'
Less Than {<key>:{$lt:<value>}} db.mycol.find({"likes"
:{$lt:50}}).pretty()
where likes < 50
Less Than Equals {<key>:{$lte:<value>}
}
db.mycol.find({"likes"
:{$lte:50}}).pretty()
where likes <= 50
Greater Than {<key>:{$gt:<value>}} db.mycol.find({"likes"
:{$gt:50}}).pretty()
where likes > 50
Greater Than Equals {<key>:{$gte:<value>}
}
db.mycol.find({"likes"
:{$gte:50}}).pretty()
where likes >= 50
Not Equals {<key>:{$ne:<value>}
}
db.mycol.find({"likes"
:{$ne:50}}).pretty()
where likes != 50
Values in an array {<key>:{$in:[<value1>
,
<value2>,……<valueN
>]}}
db.mycol.find({"nam
e":{$in:["Raj", "Ram",
"Raghu"]}}).pretty()
Where name
matches any of the
value in :["Raj",
"Ram", "Raghu"]
Values not in an array {<key>:{$nin:<value>}
}
db.mycol.find({"nam
e":{$nin:["Ramu",
Where name values
is not in the array
DR.ROOPA R,ISE,BMSCE
AND
Command: db.coll.find({$and : [{key:value}, {key:value}]})
Example: db.movies.find({$and: [{title : ‘Jai Ho’}, {releaseYear :
2016}]})
OR
Command: db.coll.find({$or : [{key:value}, {key:value}]})
Example: db.movies.find({$or: [{title : ‘Jai Ho’}, {releaseYear :
2016}]})
Combining AND and OR together
Command: db.coll.find({key : {$lt : value}, $or: [{key:value},
{key:value}]})
Example: db.coll.find({releaseYear : {$lte : 2016}, $or: [{title : ‘Jai
Ho’},{title : ‘Dangal’}]})
DR.ROOPA R,ISE,BMSCE
>db.mycol.find({"likes": {$gt:10}, $or: [{"by": "tt"},
{"title": "MongoDB Overview"}]}).pretty()
{
"_id": ObjectId(7df78ad8902c),
"title": "MongoDB Overview",
"description": "MongoDB is no sql database",
"by": "tt",
"url": "http://www.tt.com",
"tags": ["mongodb", "database", "NoSQL"],
"likes": "100"
}
>
The following example will show the documents that have likes greater than 10 and
whose title is either 'MongoDB Overview' or by is ‘ tt'. Equivalent SQL where clause
is 'where likes>10 AND (by =‘ tt' OR title = 'MongoDB Overview')'
DR.ROOPA R,ISE,BMSCE
NOT in MongoDB
Syntax
To query documents based on the NOT condition, you need to use $not keyword following is
the basic syntax of NOT −
>db.COLLECTION_NAME.find(
{
$NOT: [
{key1: value1}, {key2:value2}
]
}
).pretty()
Following example will retrieve the document(s) whose age is not greater than 25
> db.empDetails.find( { "Age": { $not: { $gt: "25" } } } )
{
"_id" : ObjectId("5dd6636870fb13eec3963bf7"),
"First_Name" : "Fathima",
"Last_Name" : "Sheik",
"Age" : "24",
"e_mail" : "Fathima_Sheik.123@gmail.com",
"phone" : "9000054321" DR.ROOPA R,ISE,BMSCE
Update Documents
Command:
db.<collectionName>.update(SELECTION_CRITERIA, UPDATED_DATA)
db.<collectionName>.save(SELECTION_CRITERIA, NEW_DATA)
Example: db.movies.update({title: ‘Jai Ho’}, {$set: {releaseYear : 2003}})
Remove Documents
Documents can be removed from a collection using remove() method
Command:
db.<collectionName>.remove(DEL_CRITERIA, JUSTONE)
Example:
db.movies.remove({title: ‘Jai Ho’}) -> Removes only the ones that satisfy the
condition.
db.movies.remove({releaseYear: 2016}, 1) -> Remove only one if multiple documents
satisfy the condition.
db.movies.remove({}) -> Removes all documents from the collection. This is the
equivalent of truncate command in SQL.
.
DR.ROOPA R,ISE,BMSCE
DR.ROOPA R,ISE,BMSCE
db.gfg.find().limit(2)
Here, we only want the first two documents
in the result. So, we pass 2 in the limit
method.

More Related Content

Similar to MongoDB Document-Oriented NoSQL Database

Mongodb - NoSql Database
Mongodb - NoSql DatabaseMongodb - NoSql Database
Mongodb - NoSql DatabasePrashant Gupta
 
Kalp Corporate MongoDB Tutorials
Kalp Corporate MongoDB TutorialsKalp Corporate MongoDB Tutorials
Kalp Corporate MongoDB TutorialsKalp Corporate
 
UNIT-1 MongoDB.pptx
UNIT-1 MongoDB.pptxUNIT-1 MongoDB.pptx
UNIT-1 MongoDB.pptxDharaDarji5
 
Mongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMohan Rathour
 
NOSQL and MongoDB Database
NOSQL and MongoDB DatabaseNOSQL and MongoDB Database
NOSQL and MongoDB DatabaseTariqul islam
 
MongoDB - An Introduction
MongoDB - An IntroductionMongoDB - An Introduction
MongoDB - An Introductionsethfloydjr
 
No SQL - MongoDB
No SQL - MongoDBNo SQL - MongoDB
No SQL - MongoDBMirza Asif
 
Silicon Valley Code Camp: 2011 Introduction to MongoDB
Silicon Valley Code Camp: 2011 Introduction to MongoDBSilicon Valley Code Camp: 2011 Introduction to MongoDB
Silicon Valley Code Camp: 2011 Introduction to MongoDBManish Pandit
 
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
 
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
 
OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES
OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES
OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES IQ Online Training
 

Similar to MongoDB Document-Oriented NoSQL Database (20)

Mongodb - NoSql Database
Mongodb - NoSql DatabaseMongodb - NoSql Database
Mongodb - NoSql Database
 
Mongodb By Vipin
Mongodb By VipinMongodb By Vipin
Mongodb By Vipin
 
Mongodb
MongodbMongodb
Mongodb
 
Kalp Corporate MongoDB Tutorials
Kalp Corporate MongoDB TutorialsKalp Corporate MongoDB Tutorials
Kalp Corporate MongoDB Tutorials
 
Mongo DB
Mongo DBMongo DB
Mongo DB
 
UNIT-1 MongoDB.pptx
UNIT-1 MongoDB.pptxUNIT-1 MongoDB.pptx
UNIT-1 MongoDB.pptx
 
Mongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorialMongo Bb - NoSQL tutorial
Mongo Bb - NoSQL tutorial
 
NOSQL and MongoDB Database
NOSQL and MongoDB DatabaseNOSQL and MongoDB Database
NOSQL and MongoDB Database
 
MongoDB - An Introduction
MongoDB - An IntroductionMongoDB - An Introduction
MongoDB - An Introduction
 
MongoDB
MongoDBMongoDB
MongoDB
 
No SQL - MongoDB
No SQL - MongoDBNo SQL - MongoDB
No SQL - MongoDB
 
Silicon Valley Code Camp: 2011 Introduction to MongoDB
Silicon Valley Code Camp: 2011 Introduction to MongoDBSilicon Valley Code Camp: 2011 Introduction to MongoDB
Silicon Valley Code Camp: 2011 Introduction to MongoDB
 
NoSQL and MongoDB
NoSQL and MongoDBNoSQL and MongoDB
NoSQL and MongoDB
 
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
 
Mongo db
Mongo dbMongo db
Mongo db
 
MongoDB
MongoDBMongoDB
MongoDB
 
Mongodb Introduction
Mongodb IntroductionMongodb Introduction
Mongodb Introduction
 
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
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
 
OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES
OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES
OVERVIEW OF MONGODB | CREATING USER IN MONGODB & ASSIGNING ROLES
 

Recently uploaded

Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...jaredbarbolino94
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxJiesonDelaCerna
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,Virag Sontakke
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerunnathinaik
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 

Recently uploaded (20)

Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptx
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developer
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 

MongoDB Document-Oriented NoSQL Database

  • 2. Overview MongoDB is an open-source, document-based NoSQL database. The following are a few notable features of MongoDB database: •It is an open-source, cross-platform, NoSQL, document-based database. •There is no concept of database schema like relational databases. Data is stored as collections and documents. •There are no complex joins between collections which are usually done in relational database tables. A join is generally performed while storing the data by combining the documents. •Data is stored in BSON format (Binary encoding of JSON-like documents). •Data stored in collections need not have a similar structure. One document can have a certain set of fields, whereas another document can have a completely different set (both type and amount) of fields. •MongoDB provides a default database named test. If there is no database selected while storing data, MongoDB uses this database to store data. DR.ROOPA R,ISE,BMSCE
  • 4. This is an AdHoc Query as the entire query is known only at the time of execution depending upon the value of username passed. "SELECT * FROM table WHERE name = " + username; DR.ROOPA R,ISE,BMSCE
  • 6. In RDBMS, defining the schema before inserting any record is mandatory, and the structure of the record being inserted should strictly match with the schema. RDBMS: Defined the schema for student Table. CREATE TABLE student( id int PRIMARY KEY NOT NULL, name varchar(30)) Now, let's try to insert the record Insert into student values (1,"Kunal"); DR.ROOPA R,ISE,BMSCE
  • 7. Now, suppose I want to add one more field in the student table. For that, I have to alter the schema of the student table to do that. Let's try without altering the schema: mysql> Insert into student values (1,"Kunal","kunal@gmail.com"); ERROR 1136 (21S01): Column count doesn't match value count at row 1 DR.ROOPA R,ISE,BMSCE
  • 8. Let's try the same thing with MongoDB. Here, we don't need to create the schema. There is no concept of a table. In MongoDB, we insert the record in the collections, and we don't need to define any schema structure for any operation. Let's try to insert: Here, I am inserting in the student collection. Now let's try to insert the record in student collection with different schema. DR.ROOPA R,ISE,BMSCE
  • 9. Now, try to fetch all records. DR.ROOPA R,ISE,BMSCE
  • 10. •MongoDB is schema-less. •There may be a difference between the number of fields, content, and size of the document from one to other. But in RDBMS, every record must adhere to a particular predefined schema. •MongoDB is horizontally scalable i.e we can add more servers (sharding) but RDBMS is only vertically scalable i.e increasing RAM. •MongoDB emphasizes on the CAP theorem (Consistency, Availability, and Partition tolerance) but RDBMS emphasizes ACID properties (Atomicity, Consistency, Isolation, and Durability). DR.ROOPA R,ISE,BMSCE
  • 11. •MongoDB supports JSON query language along with SQL but RDBMS supports SQL query language only. •MongoDB is easy to set up, configure, and run in comparison to the RDBMS. It's Java client is also very easy to use. •MongoDB is almost 100 times faster than traditional database system like RDBMS, which is slower in comparison with the NoSQL databases. •There is no support for complex joins in MongoDB, but RDBMS supports complex joins, which can be difficult to understand and take too much time to execute. •MongoDB uses internal memory for storing working sets resulting in faster access time. •MongoDB supports deep query-ability i.e we can perform dynamic queries on documents using the document-based query language that's nearly as powerful as SQL. •In MongoDB, Conversion/mapping of application objects to database objects is not needed. DR.ROOPA R,ISE,BMSCE
  • 12. Indexing •Indexing is very important for improving the performances of search queries. When we continuously perform searches in a document, we should index those fields that match our search criteria. •In MongoDB, we can index any field indexed with primary and secondary indices. Making query searches faster, MongoDB indexing enhances the performance. DR.ROOPA R,ISE,BMSCE
  • 13. Replication •When it comes to redundancy, replication is the tool that MongoDB uses. This feature distributes data to multiple machines. I •t can have primary nodes and their one or more replica sets. Basically, replication makes ready for contingencies. •When the primary node is down for some reasons, the secondary node becomes primary for the instance. This saves our time for maintenance and makes operations smooth. DR.ROOPA R,ISE,BMSCE
  • 14. GridFS GridFS is a feature of storing and retrieving files. For files larger than 16 MB this feature is very useful. GridFS divides a document in parts called chunks and stores them in a separate document. These chunks have a default size of 255kB except the last chunk. When we query GridFS for a file, it assembles all the chunks as needed. DR.ROOPA R,ISE,BMSCE
  • 15. Sharding Basically, the concept of sharding comes when we need to deal with larger datasets. This huge data can cause some problems when a query comes for them. This feature helps to distribute this problematic data to multiple MongoDB instances. The collections in the MongoDB which has a larger size are distributed in multiple collections. These collections are called “shards”. Shards are implemented by clusters. DR.ROOPA R,ISE,BMSCE
  • 16. High Performance MongoDB is an open source database with high performance. This shows high availability and scalability. It has faster query response because of indexing and replication. This makes it a better choice for big data and real-time applications. DR.ROOPA R,ISE,BMSCE
  • 17. Installing MongoDB The installation of MongoDB on a local computer. MongoDB is available in two flavors: 1. Community Edition 2. Enterprise Edition •The Community edition of MongoDB is open-sourced and freely available. • Enterprise edition is licensed and is available with an array of enterprise-grade features with commercial support. Step by step instructions on how to download and install the MongoDB community edition can be found here. DR.ROOPA R,ISE,BMSCE
  • 18. At the time of installation, MongoDB provides an option to install MongoDB Compass, a GUI console to access MongoDB databases. Alternatively, the MongoDB database can be accessed from the command line shell as well. The following is the command-line interface of MongoDB: DR.ROOPA R,ISE,BMSCE
  • 19. The following is the Graphical User Interface (MongoDB Compass): DR.ROOPA R,ISE,BMSCE
  • 20. MongoDB Components There are several database components of MongoDB. However, there are two primary components that are of interest to us. These two components are: •mongod: This is the database daemon that runs in the background. •mongo: MongoDB shell. This is used to connect to the daemon and execute various database commands. DR.ROOPA R,ISE,BMSCE
  • 21. Understanding MongoDB Storage Structure However, there is no concept of a schema in MongoDB. It primarily uses the concept of database, collection, and documents. Database: A database is a physical container for collections. Collection: A collection is a group of MongoDB documents. In SQL terminology, this is similar to a database table. Document: A document is a set of key-value pairs. In SQL terminology, this is similar to a row in a database table. Field: A field is key in a document. In SQL terminology, this is similar to a column in a database table. Embedded Document: An embedded document is the joining of multiple documents.In SQL terminology, this is similar to joining several database tables. DR.ROOPA R,ISE,BMSCE
  • 22. Start using MongoDB create databases, collections, retrieve data from existing collections imposing conditions and so on. Most MongoDB commands are structured with db.<task>(options). In that, Task name follows a camelCase naming pattern. For example, to create a new empty collection, we use db.createCollection(collectionName) Connecting to MongoDB via MongoDB Shell Open Command Prompt and type mongo DR.ROOPA R,ISE,BMSCE
  • 23. Using Help MongoDB provides a helpful list of database commands through db.help(). This commands lists down all major commands with a concise description: DR.ROOPA R,ISE,BMSCE
  • 24. Using show There is also a list of show commands to show various elements such as databases, collections, users, and others. Following is the list of show commands: DR.ROOPA R,ISE,BMSCE
  • 25. For example, we can run show dbs to list all the existing databases: Creating a MongoDB database •We can create a new database by specifying use with the database name. •If the database exists, it will be used. Otherwise, a new one will be created. DR.ROOPA R,ISE,BMSCE
  • 26. Command: use <dbname> Command: use <dname> Creation of a new database Note that though the database is created, it will not be displayed in show dbs command until there is at least one collection in it. DR.ROOPA R,ISE,BMSCE
  • 27. Dropping a MongoDB database Switch to the database to be deleted using use <dbname> command and then run below command: Command: db.dropDatabase() DR.ROOPA R,ISE,BMSCE
  • 28. Creating a Collection A new collection can be created with the following command. Command: db.createCollection(name, options) This creates an empty collection in the selected database DR.ROOPA R,ISE,BMSCE
  • 29. A collection can also be capped and we can define the maximum size and number of documents that can be stored in that collection with the optional options attribute. Options: •Capped: Possible values are true or false. This option decides whether this collection is capped. •Size: This option decides the maximum number of documents that can be stored in this collection. •Max: This option decides the maximum size in bytes that this collection can hold. Max option is checked first and then the size is validated. DR.ROOPA R,ISE,BMSCE
  • 30. Dropping a Collection A collection can be dropped using the following command: Command: db.<collectionName>.drop() DR.ROOPA R,ISE,BMSCE
  • 31. Inserting Documents A document can be inserted into a collection using insert() or save() methods Command: db.<collectionName>.insert() or db.<collectionName>.save() DR.ROOPA R,ISE,BMSCE
  • 32. Example: Following example shows how to insert a single document in a collection: DR.ROOPA R,ISE,BMSCE
  • 33. Following example shows how to insert multiple documents in a collection: DR.ROOPA R,ISE,BMSCE
  • 34. In the above insertion example, we have only supplied two fields which are perfectly valid. Below is the list of documents present in movies collection: In none of our documents, we have supplied ObjectId. MongoDB created one for each of these documents. DR.ROOPA R,ISE,BMSCE
  • 35. Finding Documents Documents from a collection can be retrieved from MongoDB using find() Command: db.<collectionName>.find() 1.Find all documents from a collection: Command: db.<collectionName>.find() Example: db.movies.find({}) We provide a {} in the find() to retrieve all the documents from a collection. In SQL, this is similar to as below: SELECT * FROM <table> pretty() is used along with find() to pretty-print the document output DR.ROOPA R,ISE,BMSCE
  • 37. In MongoDB, you don't need to create collection. MongoDB creates collection automatically, when you insert some document. >db.tp.insert({"name" : “tp"}), WriteResult({ "nInserted" : 1 }) >show collections mycol mycollection system. indexes tp DR.ROOPA R,ISE,BMSCE
  • 38. You can also pass an array of documents into the insert() method as shown below: > db.createCollection("post") > db.post.insert([ { title: "MongoDB Overview", description: "MongoDB is no SQL database", by: “tt", url: "http://www.tt.com", tags: ["mongodb", "database", "NoSQL"], likes: 100 }, { title: "NoSQL Database", description: "NoSQL database doesn't have tables", by: “tt", url: "http://www.tt.com", tags: ["mongodb", "database", "NoSQL"], likes: 20, comments: [ { user:"user1", message: "My first comment", dateCreated: new Date(2013,11,10,2,35), DR.ROOPA R,ISE,BMSCE
  • 39. BulkWriteResult({ "writeErrors" : [ ], "writeConcernErrors" : [ ], "nInserted" : 2, "nUpserted" : 0, "nMatched" : 0, "nModified" : 0, "nRemoved" : 0, "upserted" : [ ] }) DR.ROOPA R,ISE,BMSCE
  • 40. The insertOne() method: The basic syntax of insert() command is as follows − >db.COLLECTION_NAME.insertOne(document) db.createCollection("empDetails") { "ok" : 1 } > db.empDetails.insertOne(  {  First_Name: "Radhika",  Last_Name: "Sharma",  Date_Of_Birth: "1995-09-26",  e_mail: "radhika_sharma.123@gmail.com",  phone: "9848022338"  }) {  "acknowledged" : true,  "insertedId" : ObjectId("5dd62b4070fb13eec3963bea") } > _id: ObjectId(4 bytes timestamp, 3 bytes machine id, 2 bytes process id, 3 bytes incrementer) DR.ROOPA R,ISE,BMSCE
  • 41. The insertMany() method >db.empDetails.insertMany( [ { First_Name: "Radhika", Last_Name: "Sharma", Date_Of_Birth: "1995-09-26", e_mail: "radhika_sharma.123@gmail.com", phone: "9000012345" }, { First_Name: "Rachel", Last_Name: "Christopher", Date_Of_Birth: "1990-02-16", e_mail: "Rachel_Christopher.123@gmail.com", phone: "9000054321" }, { First_Name: "Fathima", Last_Name: "Sheik", Date_Of_Birth: "1990-02-16", e_mail: "Fathima_Sheik.123@gmail.com", phone: "9000054321" } ] ) { "acknowledged" : true, DR.ROOPA R,ISE,BMSCE
  • 42. The find() Method: Similar to SELECT * FROM <table> Syntax The basic syntax of find() method is as follows − >db.COLLECTION_NAME.find() find() method will display all the documents in a non-structured way. The pretty() Method To display the results in a formatted way, you can use pretty() method. Syntax >db.COLLECTION_NAME.find().pretty() The findOne() method Apart from the find() method, there is findOne() method, that returns only one document. Syntax >db.COLLECTIONNAME.findOne() Ex: >db.mycol.findOne({title: "MongoDB Overview"}) { "_id" : ObjectId("5dd6542170fb13eec3963bf0"), "title" : "MongoDB Overview", "description" : "MongoDB is no SQL database", DR.ROOPA R,ISE,BMSCE
  • 43. Using clauses to the find method SELECT col1, col2 FROM table WHERE <condition(s)> MongnDB let us add various clauses in our find() method to fetch data from a collection: Command: db.coll.find({key:value}) Example: db.movies.find({‘title’ : ‘Salt’}) o/p: DR.ROOPA R,ISE,BMSCE
  • 44. Less Than Command: db.coll.find({key : {$lt: value}}) Example: db.movies.find({releaseYear : {$lt: 2016}}) DR.ROOPA R,ISE,BMSCE
  • 45. Operation Syntax Example RDBMS Equivalent Equality {<key>:<value>}} db.mycol.find({"by":" tt"}).pretty() where by = 'tt' Less Than {<key>:{$lt:<value>}} db.mycol.find({"likes" :{$lt:50}}).pretty() where likes < 50 Less Than Equals {<key>:{$lte:<value>} } db.mycol.find({"likes" :{$lte:50}}).pretty() where likes <= 50 Greater Than {<key>:{$gt:<value>}} db.mycol.find({"likes" :{$gt:50}}).pretty() where likes > 50 Greater Than Equals {<key>:{$gte:<value>} } db.mycol.find({"likes" :{$gte:50}}).pretty() where likes >= 50 Not Equals {<key>:{$ne:<value>} } db.mycol.find({"likes" :{$ne:50}}).pretty() where likes != 50 Values in an array {<key>:{$in:[<value1> , <value2>,……<valueN >]}} db.mycol.find({"nam e":{$in:["Raj", "Ram", "Raghu"]}}).pretty() Where name matches any of the value in :["Raj", "Ram", "Raghu"] Values not in an array {<key>:{$nin:<value>} } db.mycol.find({"nam e":{$nin:["Ramu", Where name values is not in the array DR.ROOPA R,ISE,BMSCE
  • 46. AND Command: db.coll.find({$and : [{key:value}, {key:value}]}) Example: db.movies.find({$and: [{title : ‘Jai Ho’}, {releaseYear : 2016}]}) OR Command: db.coll.find({$or : [{key:value}, {key:value}]}) Example: db.movies.find({$or: [{title : ‘Jai Ho’}, {releaseYear : 2016}]}) Combining AND and OR together Command: db.coll.find({key : {$lt : value}, $or: [{key:value}, {key:value}]}) Example: db.coll.find({releaseYear : {$lte : 2016}, $or: [{title : ‘Jai Ho’},{title : ‘Dangal’}]}) DR.ROOPA R,ISE,BMSCE
  • 47. >db.mycol.find({"likes": {$gt:10}, $or: [{"by": "tt"}, {"title": "MongoDB Overview"}]}).pretty() { "_id": ObjectId(7df78ad8902c), "title": "MongoDB Overview", "description": "MongoDB is no sql database", "by": "tt", "url": "http://www.tt.com", "tags": ["mongodb", "database", "NoSQL"], "likes": "100" } > The following example will show the documents that have likes greater than 10 and whose title is either 'MongoDB Overview' or by is ‘ tt'. Equivalent SQL where clause is 'where likes>10 AND (by =‘ tt' OR title = 'MongoDB Overview')' DR.ROOPA R,ISE,BMSCE
  • 48. NOT in MongoDB Syntax To query documents based on the NOT condition, you need to use $not keyword following is the basic syntax of NOT − >db.COLLECTION_NAME.find( { $NOT: [ {key1: value1}, {key2:value2} ] } ).pretty() Following example will retrieve the document(s) whose age is not greater than 25 > db.empDetails.find( { "Age": { $not: { $gt: "25" } } } ) { "_id" : ObjectId("5dd6636870fb13eec3963bf7"), "First_Name" : "Fathima", "Last_Name" : "Sheik", "Age" : "24", "e_mail" : "Fathima_Sheik.123@gmail.com", "phone" : "9000054321" DR.ROOPA R,ISE,BMSCE
  • 49. Update Documents Command: db.<collectionName>.update(SELECTION_CRITERIA, UPDATED_DATA) db.<collectionName>.save(SELECTION_CRITERIA, NEW_DATA) Example: db.movies.update({title: ‘Jai Ho’}, {$set: {releaseYear : 2003}}) Remove Documents Documents can be removed from a collection using remove() method Command: db.<collectionName>.remove(DEL_CRITERIA, JUSTONE) Example: db.movies.remove({title: ‘Jai Ho’}) -> Removes only the ones that satisfy the condition. db.movies.remove({releaseYear: 2016}, 1) -> Remove only one if multiple documents satisfy the condition. db.movies.remove({}) -> Removes all documents from the collection. This is the equivalent of truncate command in SQL. . DR.ROOPA R,ISE,BMSCE
  • 50. DR.ROOPA R,ISE,BMSCE db.gfg.find().limit(2) Here, we only want the first two documents in the result. So, we pass 2 in the limit method.