0% found this document useful (0 votes)
20 views20 pages

4

Uploaded by

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

4

Uploaded by

shifaansari1975
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 20

****************Practical No1 Exploring mongodb and crud operation********

Details

1 MongoDB Basics
a Write a MongoDB query to create and drop database.
b Write a MongoDB query to create, display and drop collection
c Write a MongoDB query to insert, query, update and delete a

document.

Note: start server and shell.


Server (Mongod.exe)
1. Before starting the server make sure following things:
a. Path of bin directory (located in C:\Program Files\MongoDB\Server\4.2\bin)
b. Path of db directory (you must explicitly create this directory in f:\data\db)
2. Open command prompt
3. Change directory :
C:>cd C:\Program Files\MongoDB\Server\4.2\bin
4. Start server:
C:\Program Files\........\bin\>mongod.exe --dbpath f:\data\db
Shell (Mongo.exe)
1. Open new command prompt
2. Change directory : C:>cd C:\Program Files\MongoDB\Server\4.2\bin
3. Start shell: C:\Program Files\ ........\bin\>mongo.exe
Execute following commands on shell.
> db
test
> use tyit2020
switched to db tyit2020
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB

> db
tyit2020
> db.createCollection("tyit")
{ "ok" : 1 }
> db.tyit.insert({"name":"pradnya","role":"teacher"})
WriteResult({ "nInserted" : 1 })
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
tyit2020 0.000GB
> show collections
tyit
> db.tyit.find()
{ "_id" : ObjectId("5fa0e136b8a6a87a7bea7453"), "name" : "pradnya", "role" :
"teacher" }
> db.tyit.insert({"name":"prashant","role":"student"})
WriteResult({ "nInserted" : 1 })
> db.tyit.find()
{ "_id" : ObjectId("5fa0e136b8a6a87a7bea7453"), "name" : "pradnya", "role" :
"teacher" }
{ "_id" : ObjectId("5fa0e1dab8a6a87a7bea7454"), "name" : "prashant", "role" :
"student" }
> db.tyit.insert({"name":"avanti","role":"student"})
WriteResult({ "nInserted" : 1 })
> db.tyit.insert({"name":"anuradha","role":"student"})
WriteResult({ "nInserted" : 1 })
> db.tyit.insert({"name":"tapan","role":"student"})
WriteResult({ "nInserted" : 1 })
> db.tyit.update({"role":"student"},{$set:{"class":"ty"}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

> db.tyit.find()
{ "_id" : ObjectId("5fa0e136b8a6a87a7bea7453"), "name" : "pradnya", "role" :
"teacher" }
{ "_id" : ObjectId("5fa0e1dab8a6a87a7bea7454"), "name" : "prashant", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e1f6b8a6a87a7bea7455"), "name" : "avanti", "role" :
"student" }
{ "_id" : ObjectId("5fa0e207b8a6a87a7bea7456"), "name" : "anuradha", "role" :
"student" }
{ "_id" : ObjectId("5fa0e216b8a6a87a7bea7457"), "name" : "tapan", "role" :
"student" }
> db.tyit.update({"role":"student"},{$set:{"class":"ty"}},{multi:true})
WriteResult({ "nMatched" : 4, "nUpserted" : 0, "nModified" : 3 })
> db.tyit.find()
{ "_id" : ObjectId("5fa0e136b8a6a87a7bea7453"), "name" : "pradnya", "role" :
"teacher" }
{ "_id" : ObjectId("5fa0e1dab8a6a87a7bea7454"), "name" : "prashant", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e1f6b8a6a87a7bea7455"), "name" : "avanti", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e207b8a6a87a7bea7456"), "name" : "anuradha", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e216b8a6a87a7bea7457"), "name" : "tapan", "role" :
"student",
"class" : "ty" }
> db.tyit.update({"class":"ty"},{$set:{"class":"sy"}},{multi:true})
WriteResult({ "nMatched" : 4, "nUpserted" : 0, "nModified" : 4 })
> db.tyit.find()
{ "_id" : ObjectId("5fa0e136b8a6a87a7bea7453"), "name" : "pradnya", "role" :
"teacher" }
{ "_id" : ObjectId("5fa0e1dab8a6a87a7bea7454"), "name" : "prashant", "role" :
"student",
"class" : "sy" }
{ "_id" : ObjectId("5fa0e1f6b8a6a87a7bea7455"), "name" : "avanti", "role" :
"student",
"class" : "sy" }
{ "_id" : ObjectId("5fa0e207b8a6a87a7bea7456"), "name" : "anuradha", "role" :
"student",
"class" : "sy" }
{ "_id" : ObjectId("5fa0e216b8a6a87a7bea7457"), "name" : "tapan", "role" :
"student",
"class" : "sy" }

> db.tyit.update({},{$set:{"class":"ty"}},{multi:true})
WriteResult({ "nMatched" : 5, "nUpserted" : 0, "nModified" : 5 })
> db.tyit.find()
{ "_id" : ObjectId("5fa0e136b8a6a87a7bea7453"), "name" : "pradnya", "role" :
"teacher",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e1dab8a6a87a7bea7454"), "name" : "prashant", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e1f6b8a6a87a7bea7455"), "name" : "avanti", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e207b8a6a87a7bea7456"), "name" : "anuradha", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e216b8a6a87a7bea7457"), "name" : "tapan", "role" :
"student",
"class" : "ty" }
> db.tyit.update({},{$unset:{"class":"ty"}},{multi:true})
WriteResult({ "nMatched" : 5, "nUpserted" : 0, "nModified" : 5 })
> db.tyit.find()
{ "_id" : ObjectId("5fa0e136b8a6a87a7bea7453"), "name" : "pradnya", "role" :
"teacher" }
{ "_id" : ObjectId("5fa0e1dab8a6a87a7bea7454"), "name" : "prashant", "role" :
"student"}
{ "_id" : ObjectId("5fa0e1f6b8a6a87a7bea7455"), "name" : "avanti", "role" :
"student"}
{ "_id" : ObjectId("5fa0e207b8a6a87a7bea7456"), "name" : "anuradha", "role" :
"student"}
{ "_id" : ObjectId("5fa0e216b8a6a87a7bea7457"), "name" : "tapan", "role" :
"student"}

> db.tyit.remove({"role":"teacher"})
WriteResult({ "nRemoved" : 1 })
> db.tyit.find()
{ "_id" : ObjectId("5fa0e1dab8a6a87a7bea7454"), "name" : "prashant", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e1f6b8a6a87a7bea7455"), "name" : "avanti", "role" :
"student",
"class" : "ty" }
{ "_id" : ObjectId("5fa0e207b8a6a87a7bea7456"), "name" : "anuradha", "role" :
"student",
"class" : "ty" }

{ "_id" : ObjectId("5fa0e216b8a6a87a7bea7457"), "name" : "tapan", "role" :


"student",
"class" : "ty" }
> db.tyit.remove({})
WriteResult({ "nRemoved" : 4 })
> db.tyit.find()
> db.tyit.drop()
true
> show collections
> db.dropDatabase()
{ "dropped" : "tyit2020", "ok" : 1 }
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
>
***************Practical 1 Exploring mongodb*****************

Create a new MongoDB database and collection

test> use movies_list switched to db movies_list

movies_list> db.createCollection("TopMovies")

{ ok: 1 }

Insert a sample data into the collection

movies_list> db. TopMovies.insertOne({

title: "KGF Chapter 2",

verdict: "Blockbuster",

Language: "kannada"

})

acknowledged: true,

insertedId: ObjectId('65ba327e09a6fc0b39462f46')

Retrieve and display data from the collection

movies_list> db. TopMovies.find().pretty()

_id: ObjectId('65ba327e09a6fc0b39462f46'),

title: 'KGF Chapter 2'

verdict: 'Blockbuster',

Language: kannada'

]
CRUD Operations: -

1. Create

@msccsstudents> db. StudentsData.insertOne({ name: "Shifa", age:22, Percentage:


76 })
{

acknowledged: true,

insertedId: ObjectId("65b1f1638f6cb8e95105d069)
}

@msccsstudents> db. StudentsData.insertMany([{ name: "Shifa", age:22, Percentage:


76 },{ name: "abc", age:22, Percentage: 76 },{ name: "xyzzy", age:22, Percentage:
76 }])

2. Read

Rsccsstudents> db.StudentsData.find().pretty()
[

{_id: ObjectId('65b1f1298f6cb0e95105d068') },

_id: ObjectId('65b1f1638f6cb0e95105d069'),

name: Harshal,

age: 22,

Percentage: 76

_id: ObjectId('65b1f23c8f6cb0e95105d06a),

name: Yash',

age: 36,

percentage: 80

_id: ObjectId('65b1f23c8f6cb0e95105d06b'),

name: 'Rolex',

age: 34,

percentage: 89

_id: ObjectId('65b1f23c8f6cb0e95105d06c'

name: Jungkook',
age: 24, percentage: 99

@sccsstudents> db. StudentsData.updateOne({name:"Yash

3. Update

msccsstudents> db. StudentsData.updateOne({name:"Yash"}, {$set: {age: 38}})

acknowledged: true,

insertedId: null,

matched Count: 1,

modified Count: 1,

upserted Count: 8

@sccsstudents> db. StudentsData.find().pretty()

_id: ObjectId('65b1f1208f6cb0e95105d068') },

_id: ObjectId('65b1f1638f6cb0951050069'),

name: 'Harshal',

age: 22,

Percentage: 76

_id: ObjectId('65b1f23c8f6cb0e95105d66а),

name: Yash,

age: 38,

percentage: 80

_id: ObjectId('65b1f23c8f6cb0e95105d66b),

name: 'Rolex',

age: 34,

percentage: 89

_id: ObjectId('65b1f23c8f6cb0e95105d86c'),

name: Jungkook,

age: 24,

percentage: 99

}
]

4. Delete

msccsstudents> db. StudentsData.deleteOne({name:"Yash"})

{ acknowledged: true, deleted Count: 1 }

msccsstudents> db. StudentsData.find().pretty()

{ id: ObjectId('65b1f1208f6cb0e95105d068') },

_id: ObjectId('65b1f1638f6cb0e95105d069'),

name: 'Harshal',

age: 22,

Percentage: 76

_id: ObjectId('65b1f23c8f6cb0e95105d06b'),

name: 'Rolex'

age: 34,

percentage: 89

_id: ObjectId('65b1f23c8f6cb0e95105d06c

name: Jungkook',

age: 24,

percentage: 99

]
****************Practical 2 Indexing in mongodb******************

We will use msccsstudents database which has StudentsData collection for indexing.

msccsstudents> db. StudentsData.find().pretty()

{_id: ObjectId('65b1f1208f6cb0e95105d068') },
_id: ObjectId('65b1f1638f6cb8e95105d069'),

name: 'Harshal',

age: 22,

Percentage: 76

_id: ObjectId('65b1f23c8f6cb0e95105d06b'),

name: 'Rolex',

age: 34,

percentage: 89

_id: ObjectId('65b1f23c8f6cb0e95105d06c),

name: Jungkook',

age: 24,

percentage: 99

_id: ObjectId('65b20a33fcff1ee76dc5a76b'),

name: Namjoon',

age: 26,

percentage: 87

_id: ObjectId('65b20a33fcff1ee76dc5a76c'),

name: 'Taehyung',

age: 24,

percentage: 87

_id: ObjectId('65b20a33fcff1ee76dc5a76d'),

name: Jin'.

age: 30

percentage: 90

},

We will be creating index on percentage

msccsstudents> db.StudentsData.createIndex({percentagpercentage: 87})

percentage_87 msccsstudents> db. StudentsData.getIndexes()


{ v: 2, key: { id: 1 }, name: 'id },

{ v: 2, key: { percentage: 87 }, name: 'percentage_87' }

Now we will check the indexes

msccsstudents> db. StudentsData.find({percentage: 87}).explain(executionStats')

explainVersion: 12,

queryPlanner: {

namespace: msccsstudents. StudentsData,

indexFilterSet: false, parsedQuery: { percentage: { 'Sen': 87 } },

queryHash: 11888BDC'

planCachekey:F73AEF68',

maxIndexedOrSolutionsReached: false, maxIndexedAndSolutionsReached: false,

maxScansToExplodeReached: false,

winningPlan: { queryPlan: {

stage: FETCH

planNodeId: 2,

inputStage: {

stage: …
executionStats: {

executionSuccess: true,

nReturned: 2.

executionTimeMillis: 16,

totalKeysExamined: 2,

totalDocsExamined: 2,

executionStages: {

stage: 'nlj planNodeId: 2,

nReturned: 2,

executionTimeMillisEstimate: 5,
opens: 1, closes: 1,

saveState: 1,

restoreState: 1,

isEOF: 1,

totalDocsExamined: 2,

totalkeysExamined: 2,

collectionScans: 0,

collectionSeeks: 2,

indexScans: 0,

indexSeeks: 1,

indexesUsed: ['percentage_87' ],

innerOpens: 2,

innerCloses: 1,

As you can see after creating index only two documents have been examined in the
collection.

****************Practical 3 Querying In Mongodb*******************

1. To retrieve data of specified name in query

msccsstudents> db. StudentsData.find({name: "Jungkook"})

_id: ObjectId('65b1f23c8f6cb0e95105d06c

name: 'Jungkook',

age: 24,

percentage: 99

]
2. To retrieve data of students whose age is greater than 28

msccsstudents> db.StudentsData.find({age : {$gt:28}})

_id: ObjectId('65b1f23c8f6cb0e95105d06b'),

name: 'Rolex!

age: 34,

percentage: 89

_id: ObjectId('65b20a33fcff1ee76dc5a76d'),

name: Jin

age: 30,

percentage: 90

_id: ObjectId('65b20a33fcff1ee76dc5a76e'),

name: Suga',

age: 29,

percentage: 82

}
]

3. To retrieve data of those students whose age is lesser than 24

msccsstudents> db.StudentsData.find({age: {$lt:24}})

_id: ObjectId('65b1f1638f6cb0e95105d069'),

name: Harshal'

age: 22,

Percentage: 76

4. To retrieve the data with specific fields from collection

msccsstudents> db. StudentsData.find({name: 'Namjoon'}, {_id:false, percentage:0})


[{ name: 'Namjoon, age: 26}]

5. To skip the first 5 documents and retrieve the next data from collection

msccsstudents> db.StudentsData.find().pretty().skip(5)

_id: ObjectId('65b20a33fcff1ee76dc5a76c),

name: Taehyung',

age: 24,

percentage: 87

_id: ObjectId('65b20a33fcff1ee76dc5a76d'),

name: 'Jin',

age: 30,

percentage: 98

_id: ObjectId('65b20a33fcff1ee76dc5a76e'),

name: Suga'

age: 29,

percentage: 82

6. To retrieve only first two data from collection

msccsstudents> db.StudentsData.find().pretty().limit(2)

{_id: ObjectId('65b1f1208f6cb0e95105d068') },

_id: ObjectId('65b1f1638f6cb0e95105d069'),

name: 'Harshal',

age: 22,

Percentage: 76

}
]

7. To retrieve the data and sort in ascending order


msccsstudents> db.StudentsData.find().pretty().sort({percentage:1})

_id: ObjectId('65b1f1288f6cb8e95185d868) },

_id: ObjectId('65b1f1638f6cb8e95105d069'),

name: 'Harshal

age: 22, Percentage: 76

_id: ObjectId('65b2@a33fcfflee76dc5a76e'),

name: 'Suga,

age: 29,

percentage: 82

_id: ObjectId('65b28a33fcfflee76dc5a76b'),

name: 'Namjoon',

age: 26,

percentage: 87

_id: ObjectId('65b28a33fcff1ee76dc5a76c),

name: 'Taehyung',

age: 24,

percentage: 87

_id: ObjectId('65b1f23c8f6cb8e95105d06b),

name: 'Rolex'

age: 34,

percentage: 89

8. To retrieve the data and sort in descending order

msccsstudents> db.StudentsData.find().pretty().sort({percentage:-1})

_id: ObjectId('65b1f23c8f6cb0e95105d06c),

name: Jungkook',

age: 24,
percentage: 99

_id: ObjectId('65b20a33fcff1ee76dc5a76d'),

name: Jin,

age: 30,

percentage: 90

_id: ObjectId('65b1f23c8f6cb0e95105d06b),

name: 'Rolex,

age: 34,

percentage: 89

_id: ObjectId(165b20a33fcff1ee76dc5a76c),

name: Taehyung",

age: 24,

percentage: 87

_id: ObjectId('65b20a33fcfflee76dc5a76b),

name: 'Namjoon,

age: 26,

percentage: 87

********Practical 4 interacting with Redis***************

Storing and retrieving data in Redis using various data structures like strings,
lists, and sets

Strings:-

127.0.0.1:6379> set name "mongo"

OK

127.0.0.1:6379> get name "mongo"

Lists:-

127.0.0.1:6379> LPUSH movies_list "Top Movies"

(integer) 1
127.0.0.1:6379> RPUSH movies_list "KGF Chapter 2" "RRR" "Jawan"

(integer) 4

127.0.0.1:6379> LRANGE movies_list 0 -1

1) "Top Movies"

2) "KGF Chapter 2"

3) "RRR"

4) "Jawan"

Sets:-

127.0.0.1:6379> sadd database mongodb

(integer) 1

127.0.0.1:6379> sadd database hbase

(integer) 1

127.0.0.1:6379> sadd database cassandra

(integer) 1

127.0.0.1:6379> smembers database

1) "mongodb"

2) "cassandra"

3) "hbase"

--->Basic commands in Redis

127.0.0.1:6379> set key harshal

Ok

127.0.0.1:6379> get key "harshal"


127.0.0.1:6379> ping

PONG

********Practical 5 Redis Data Manipulation*********

We will be using Redis lists data type for and perform some operations to retrieve
the data
127.0.0.1:6379> LPUSH movies_list "Top Movies"

(integer) 1

127.0.0.1:6379> RPUSH movies_list "KGF Chapter 2" "RRR" "Jawan"

(integer) 4

127.0.0.1:6379> LRANGE movies_list 0 -1

1) "Top Movies"

2) "KGF Chapter 2"

3) "RRR"

4) "Jawan"

1. Ilen gives the length of the list

127.0.0.1:6379> llen movies list

(integer) 4

2. Ipop Removes and gets first element in a list

127.0.0.1:6379> lpop movies_list

"Top Movies"

3. rpop Removes and gets the last element in a list

127.0.0.1:6379> rpop movies_list

"Jawan"

4. lindex Gets an element from a list by its index

127.0.0.1:6379> lindex movies_list

"RRR"

5. Ipush Prepends one value or multiple values to a list

127.0.0.1:6379> lpush movies_list "animal"

(integer) 4

127.0.0.1:6379> Lrange movies_list 0 -1

1) "animal" 2) "jawan"

3) "RRR
4) "KGF Chapter 2"

127.0.0.1:6379> lpush movies_list "salaar" "Dunki" (integer) 6

127.0.0.1:6379> lrange movies_list 0-1

1) "Dunki"

2) "salaar"
2) "salaar"
3)"animal"

4)"jawan"
5)"RRR"

6)"KGF Chapter 2"

6. Itrim Trims a list to the specified range

127.0.0.1:6379> ltrim movies_list 0 2

OK

1) "Dunki"

2) "salaar"

3) "animal"

127.0.0.1:6379> lrange movies_list 0 -1

7. rpush Appends one or multiple values to a list

127.0.0.1:6379> rpush movies_list "Tiger 3"

(integer) 4

127.0.0.1:6379> lrange movies_list 0 -1

1) "Dunki"

2) "salaar"

3) "animal"

4) "Tiger 3"

127.0.0.1:6379> rpush movies_list "oppenheimer" "Mission Impossible"

(integer) 6

127.0.0.1:6379> Lrange movies_list 0 -1

1) "Dunki"
2) "salaar"

3) "animal"

4) "Tiger 3"

5)"oppenheimer"

6)"Mission Impossible"

**************Practical 6 Apache Cassandra Operations***************

a) Create a keyspace and define a table schema

cqlsh> CREATE KEYSPACE test_keyspace WITH replication = {'class': 'SimpleStrategy',


replication_factor': '1' } AND durable_writes ='true';

cqlsh >DESCRIBE KEYSPACES

system schema system

test keyspace

system_auth system_distributed system_traces

cqlsh> USE test_keyspace;

cqlsh:test keyspace> CREATE TABLE employee_by_id(id int PRIMARY KEY, name text,
position text);
cqlsh: test keyspace> DESCRIBE TABLES;

employee_by_id

cqlsh:test_keyspace> SELECT * FROM employee_by_id;

id |

name |

position

b) Insert data into the table

cqlsh:test keyspace> INSERT INTO employee_by_id(id, name, position) values(1,


'Rahul',"c00");

cqlsh:test_keyspace> SELECT * FROM employee_by_id;

id name |

position

COO
cqlsh:test keyspace> INSERT INTO employee_by_id(id, name, position) values(1,
'Harshal

1| Rahul |

--->c) Perform CRUD operations

--->Create:

cqlsh> USE test_keyspace;

cqlsh: test keyspace> CREATE TABLE employee_by_id(id int PRIMARY KEY, name text,
position text);

cqlsh test keyspace> DESCRIBE TABLES;

employee_by_id

cqlsh:test keyspace> INSERT INTO employee_by_id(id, name, position) values(1,


'Rahul', 'COD');

cqlsh:test_keyspace> INSERT INTO employee_by_id(id, name, position) values (2,


'Raj', 'Manager');
cqlsh:test keyspace> INSERT INTO employee_by_id(id, name, position) values(3,
'Yash',' Senior Web Developer');

--->sRead:

cqlsh:test_keyspace> SELECT * FROM employee_by_id;

id name |

position

1| Rahul

21

Raj

COO

3 | Yash |

Senior Web

Manager

Developer

---.Update:

cqlsh:test keyspace> UPDATE employee_by_id SET position ='Senior Data Analyst'


WHERE id = 1;

cqlsh:test keyspace> SELECT FROM employee_by_id;

id | name | position

Rahul Senior Data Analyst

Raj Manager Yash Senior Web Developer

--->Delete:

cqlsh:test_keyspace> DELETE from employee_by_id where id = 2;

cqlsh:test_keyspace> SELECT * FROM employee_by_id;

id name |

position

Rahul

Senior Data Analyst

Yash Senior Web Developer

You might also like