0% found this document useful (0 votes)
97 views

Mongodb Cheat Sheet: Click Here

Uploaded by

arjun singh
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
97 views

Mongodb Cheat Sheet: Click Here

Uploaded by

arjun singh
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 17

MongoDB Cheat Sheet

To view the live version of the


page, click here.

© Copyright by Interviewbit
Contents

MongoDB Tutorial: Beginners and Experienced


1. To show all databases
2. To show current database
3. Switch or create database
4. Drop a database
5. Inserting Document
6. Insert Row
7. Insert Multiple Row
8. Finding document
9. Finding Documents using Operators
10. Find one row
11. Delete a document
12. Delete row
13. Sort rows
14. Count Rows
15. Limit rows
16. Update one document
17. Update Multiple Document
18. Update Row
19. Indexes
20. Aggregation

Page © Copyright by
MongoDB Tutorial: Beginners and
Experienced (....Continued)

21. Databases and Collections


22. Some other Handy commands

Page © Copyright by
Let's get Started

Introduction
MongoDB is a data management platform that enables quick and easy query
development and deployment of online, real-time data applications. It is a
distributed, not-backed store that runs on a collection of servers and uses a JSON-
like data model.
MongoDB Replica Management allows you to easily and cost-effectively scale your
MongoDB architecture. MongoDB provides a rich set of analytical tools for data
profiling, load analysis, and monitoring. It can be used for a variety of purposes
including data mining, Big Data, and online analytical processing.
Internet and enterprise application developers that require flexibility and scaling
efficiently may consider using MongoDB. MongoDB is particularly suited to
developers of varied types who are creating scalable applications using agile
approaches.

Advantages and Disadvantages of MongoDB

MongoDB has both pros and cons just like other NoSQL databases.
Pros:

Page © Copyright by
MongoDB Cheat

Any type of data can be stored in MongoDB, which gives users the flexibility to
create as many fields in a document as they desire.
Documents map to native data types in many programming languages, which
provides a means of adding to data. Sharding, which involves dividing data
across a cluster of machines, is also achieved by this.
MongoDB includes its own file system, similar to the Hadoop Distributed File
System (HDFS), called GridFS. The file system is primarily used to store files that
exceed MongoDB's 16 MB per document BSON size limit.
MongoDB is also compatible with Spark, Hadoop, and other data processing
frameworks like SQL.
Cons:
When a MongoDB master node goes down, another node will automatically
become the new master. Despite the fact that it promises continuity, the automatic
failover strategy is not instantaneous - it may take up to a minute. In contrast, the
Cassandra NoSQL database supports multiple master nodes, so that if a master
goes down, another one is ready to run a highly available database infrastructure.
Although MongoDB's single master node restricts how fast data can be written
to the database, it also limits how much data can be written. Because of this,
data writes must be recorded on the master, and new information cannot be
added to the database quickly.
MongoDB doesn't provide full referential integrity using foreign-key constraints,
which could affect data consistency.
User authentication isn't enabled by default in MongoDB databases. Because of
this, there is a default setting that blocks networked connections to databases if
they've not been configured by a database administrator.
There have also been instances of ransomware attacks that forced the setting to be
turned on by the database administrator.

Features of MongoDB

Page © Copyright by
MongoDB Cheat

1. Replication: The MongoDB replica set feature is known for providing high
availability. Two or more copies of data constitute a replica set. A replica-set acts as
a primary or a secondary replica. Secondary replicas keep a copy of the data of the
primary, preserving it in an orderly manner, as part of a replicated MongoDB
system. Whenever a primary replica crashes, the replica set automatically
determines which secondary should become the primary and conducts an election if
necessary. Secondary replicas may additionally serve read operations, but the data is
only eventually consistent by default. To resolve the election of the new primary,
three standalone servers must be added as secondary servers.
2. Indexing: A MongoDB field can be indexed with primary and secondary indices
or indexes. A MongoDB index stores a small portion of the data set in a form that is
convenient to traverse. The index stores the value of a particular field, or set of
fields, ordered by their value. In MongoDB, indexes assist in efficiently resolving
queries by storing a small portion of the data set in a convenient form. A MongoDB
index is similar to a typical relational database index.
3. File storage: GridFS, which uses MongoDB as a file system, can be used to
balance and replicate data across multiple machines. A file can be stored in
MongoDB as a grid file system. It has features similar to a file system such as load
balancing and data replication.
4. Aggregation: The aggregation pipeline, the map-reduce function, and single-
purpose aggregation methods are available in MongoDB. According to MongoDB's
documentation, the Aggregation Pipeline provides better performance for most
aggregation operations over map-reduce. With the aggregation framework, users
can obtain the kind of results for which the SQL GROUP BY clause is used. The
aggregation framework includes $lookup and standard deviation like statistical
operators.
5. Sharding: Sharding is the splitting up of data among machines. To permit this,
we refer to it as "partitioning" or "sharding." We may store more data and handle
more load without upgrading our machines, by dividing data across them.
MongoDB's sharding allows you to split up a collection among many machines
(shards), allowing it to grow beyond resource limitations.

Page © Copyright by
MongoDB Cheat

The following cheat sheet is filled with some handy tips and commands for quick
reference:

MongoDB Tutorial: Beginners and Experienced


1. To show all databases
show dbs

2. To show current database


db

3. Switch or create database


use acme

4. Drop a database
db.dropDatabase()

5. Inserting Document
The MongoDB shell provides the following methods to insert documents into a
collection:

db.docx.insert({name:'Enterprise',operator:'Star',type:'Explorer',class:'Universe',cre
6. Insert Row
w db.docx.insert({name:'Prometheus',operator:'Star',class:'Prometheus',crew:40,codes:

The MongoDB shell provides the following methods to insert rows:


db.docx.insert({ title: 'Post Five',
body: 'Body of post five, category: 'Information',
tags: ['Information', 'events'], user: {
name: 'David', status: 'author'

Page © Copyright by
MongoDB Cheat

7. Insert Multiple Row


The MongoDB shell provides the following methods to insert multiple rows:
db.docx.insertMany([
{
title: 'Post six,
body: 'Body of post six, category: 'Science', date: Date()
},
{
title: 'Post seven',
body: 'Body of post seven', category: 'Information', date: Date()
},
{
title: 'Post eight',
body: 'Body of post eight', category: 'Sports',
date: Date()
}
])

8. Finding document
The MongoDB shell provides the following methods to find documents:

Page © Copyright by
MongoDB Cheat

S. No. Commands Description

Finds one
1. db.docx.findOne() random
document.

2. db.docx.find().prettyPrint()
Finds all
documents.

Displays only
the names of
db.docx.find({}, {name:true,
3. the document
_id:false})
Docx.

Can find one


document by
db.docx.find({}, {name:true,
4. attribute among
_id:false})
many
documents.

9. Finding Documents using Operators


The MongoDB shell provides the following methods to find documents using
operators:

Page © Copyright by
MongoDB Cheat

Operator Description Commands

db.docx.find({class:
$gt greater than
{$gt:'T'}

greater than db.docx.find({class:


$gte
equals {$gt:'T'}

db.docx.find({class:
$lt lesser than
{$lt:'T'}

lesser than db.docx.find({class:


$lte
equals {$lte:'T'}

does an db.docx.find({class:
$exists attribute exist
{$gt:'T'}
or not

Matching db.docx.find({name:
$regex pattern in pearl-
{$regex:'^USS\\sE'}})
style

search by type db.docx.find({name :


$type
of an element {$type:4}})

10. Find one row


To find a row, use-
db.docx.findOne({ category: 'Science' })

11. Delete a document

Page © Copyright by
MongoDB Cheat

deleteOne and deleteMany can be used for this purpose. Both of these methods take a
filter document as their first parameter.
db.docx.deleteOne({"_id" : 6})

12. Delete row


To delete a row, use:
db.docx.remove({ title: 'Post six' })

13. Sort rows


The MongoDB shell provides the following methods to sort rows:

# asc
#db.docx.find().sort({
desc title: 5 }).pretty()
14.db.docx.find().sort({
Count Rows title: -5}).pretty()

To count number of rows, use:


db.docx.find().count()

15. Limit rows


To limit the number of rows, use:
db.docx.find().limit(5).pretty()

16. Update one document


A document stored in the database can be changed using one of several update methods:
updateOne, updateMany, and replaceOne.
updateOne and updateMany take a filter document as their first parameter and a
modifier document, which describes changes to make, as the second parameter.
Command:

Page © Copyright by
MongoDB Cheat

To update multiple document, use:


db.docx.update({"category": "Information"}, {$set: {"category": 'Sports'}} )

18. Update Row


The MongoDB shell provides the following method to update row:

db.docx.update({ title: 'Post three' },


19.
{ Indexes
title: 'Post three,
body: 'New body for post
List
3', Indexes:
date: Date() It can be done by using: db.docx.getIndexes()
},
{ Create Index
upsert: true
})
db.docx.createIndex({"name": 2}) // single field index
db.docx.createIndex({"name": 2, "date": 2}) // compound index
db.docx.createIndex({foo: "text", bar: "text"}) // text index db.docx.createIndex({"$**": "te

Drop Index: db.docx.dropIndex("name_3")


Hide/Unhide Indexes
To Hide: db.docx.hideIndex("name_3")
To Unhide: db.docx.unhideIndex("name_3")
Creating a compound index: db.docx.ensureIndex({name : 3, operator : 1, class
: 0})
Dropping a compound index: db.docx.dropIndex({name : 3, operator : 1, class
: 0})

20. Aggregation
1.

Page © Copyright by
MongoDB Cheat

Operator Description Command

db.docx.aggregate([{$group
Sum up : {_id : "$operator",
$sum
values num_docx : {$sum :
"$value"}}}])

db.docx.aggregate([{$group
Calculates
: {_id : "$operator",
$avg average
num_docx : {$avg :
values
"$value"}}}])

db.docx.aggregate([{$group
Find
$min / : {_id : "$operator",
min/max
$max values num_docx : {$min :
"$value"}}}])

db.docx.aggregate([{$group
Push values
: {_id : "$operator",
$push to a result
classes : {$push:
array
"$value"}}}])

Push values db.docx.aggregate([{$group


to a result
: {_id : "$operator",
$addToSet array
classes : {$addToSet :
without
duplicates "$value"}}}])

db.docx.aggregate([{$group
To get the
$first / : {_id :
first / last
$last document "$operator",
last_class : {$last
: "$value"}}}])

Page © Copyright by
MongoDB Cheat

21. Databases and Collections


Drop: db.docx.drop() // removes the collection and its index definitions
Create Collection:
// Create collection with a $jsonschema db.createCollection("contacts", { validator: {$jsonSche
bsonType: "object", required: ["gadget"], properties: {
phone: {
bsonType: "string",
description: "must be a string and is required"
},
email: {
bsonType: "string", pattern: "@mongodb\.com$",
description: "must be a string and match the regular expression pattern"
},
status: {
enum: [ "Unknown", "Incomplete" ],
description: "can only be one of the enum values"
}
}
}}
})

Other Collection Functions


In order to create a statistical structure and to copy a pointer into a user-
specified memory location, use: db.docx.stats()
The total amount of storage in bytes allocated to the document for
document storage can be known by using: db.docx.storageSize()
To report the total size used by the indexes in a collection document, use:
db.docx.totalIndexSize()
The total size in bytes of the data in the collection plus the size of every
index can be known by using: db.docx.totalSize()

22. Some other Handy commands


use admin

Page © Copyright by
MongoDB Cheat

db.createUser({"user": "major", "pwd": passwordPrompt(), "roles": ["major"]})


db.dropUser("major")
db.auth( "user", passwordPrompt() )

use test

db.getSiblingDB("dbname")
Change Streams
db.currentOp()
db.killOp(345) // opid

watchCursor = db.docx.watch( [ { $match : {"operationType" : "insert" } } ]


Search in a MongoDb Database:
) while (!watchCursor.isExhausted()){
if (watchCursor.hasNext())
db.comments.find({lang:'Python'})
{ print(tojson(watchCursor.next()
));
Showing
} All Collections in a Database:
db.getCollectionNames()

Listing a Collection’s Records:


db.collectionname.find()

Listing Records with Matching Values of Specific Fields:


db. collectionname.find({"field2": "secondmatching value"})

Multiple Matching Values:


db. collectionname.find({"field2": "second matching value", "field3":
"thirdmatchingvalue"})

Finding a Single Record:


db. collectionname.findOne({"field2": "content"})

Page © Copyright by
MongoDB Cheat

Conclusion

MongoDB is one of the world’s most popular document databases. It has some
powerful capabilities like full-text search, data aggregation etc. One should have a solid
knowledge of what MongoDB is. In this document, we’ve covered the basics of
MongoDB, its features, and some of the important cheat sheets. We’ve also explored
the common database operations of MongoDB. Now, it’s time for you to head out and
try what we’ve covered here and more.

Useful Resources

Technical Interview Questions


Coding Interview Questions
Interview Resources
DSA- Programming
Mock Interview

Page © Copyright by
Links to More Interview Questio

C Interview Questions Php Interview Questions C Sharp Interview Questions

Web Api Interview Hibernate Interview Node Js Interview Questions


Questions Questions

Cpp Interview Questions Oops Interview Questions Devops Interview Questions

Machine Learning Interview Docker Interview Questions Mysql Interview Questions


Questions

Css Interview Questions Laravel Interview Questions Asp Net Interview Questions

Django Interview Questions Dot Net Interview Questions Kubernetes Interview


Questions

Operating System Interview React Native Interview Aws Interview Questions


Questions Questions

Git Interview Questions Java 8 Interview Questions Mongodb Interview


Questions

Dbms Interview Questions Spring Boot Interview Power Bi Interview Questions


Questions

Pl Sql Interview Questions Tableau Interview Linux Interview Questions


Questions

Ansible Interview Questions Java Interview Questions Jenkins Interview Questions

Page © Copyright by

You might also like