0% found this document useful (0 votes)
233 views17 pages

MongoDB Cheat Sheet

Mingodb

Uploaded by

Adevair Junior
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
233 views17 pages

MongoDB Cheat Sheet

Mingodb

Uploaded by

Adevair Junior
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as 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 1 © Copyright by Interviewbit


MongoDB Cheat Sheet

MongoDB Tutorial: Beginners and


Experienced (.....Continued)

21.   Databases and Collections


22.   Some other Handy commands

Page 2 © Copyright by Interviewbit


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 3 © Copyright by Interviewbit


MongoDB Cheat Sheet

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 4 © Copyright by Interviewbit


MongoDB Cheat Sheet

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 5 © Copyright by Interviewbit


MongoDB Cheat Sheet

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',crew
db.docx.insert({name:'Prometheus',operator:'Star',class:'Prometheus',crew:40,codes:[10,

6.   Insert Row
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 6 © Copyright by Interviewbit


MongoDB Cheat Sheet

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 7 © Copyright by Interviewbit


MongoDB Cheat Sheet

S. No. Commands Description

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

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

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

Can find one


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

9.   Finding Documents using Operators


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

Page 8 © Copyright by Interviewbit


MongoDB Cheat Sheet

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 9 © Copyright by Interviewbit


MongoDB Cheat Sheet

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({ title: 5 }).pretty()

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

14.   Count Rows
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: db docx updateOne({" id": 2} {$set: {"title": 'revised title'}})

Page 10 © Copyright by Interviewbit


MongoDB Cheat Sheet

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' },


{
title: 'Post three,
body: 'New body for post 3',
date: Date()
},
{
upsert: true
})

19.   Indexes
List Indexes: It can be done by using: db.docx.getIndexes()
Create Index

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({"$**": "text"}) // wildcard text index
db.docx.createIndex({"userMetadata.$**": 1}) // wildcard index

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 11 © Copyright by Interviewbit


MongoDB Cheat Sheet

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 num_docx : {$min :
values
"$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
"$value"}}}])
duplicates 

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

Page 12 © Copyright by Interviewbit


MongoDB Cheat Sheet

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: {$jsonSchema: {
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 13 © Copyright by Interviewbit


MongoDB Cheat Sheet

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


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

use test

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

Change Streams

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


while (!watchCursor.isExhausted()){
if (watchCursor.hasNext()){
print(tojson(watchCursor.next()));
}
}

Search in a MongoDb Database: 


db.comments.find({lang:'Python'})

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 14 © Copyright by Interviewbit


MongoDB Cheat Sheet

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 15 © Copyright by Interviewbit


Links to More Interview
Questions

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 16 © Copyright by Interviewbit

You might also like