MongoDB /

MongoDB là một cơ sở dữ liệu NoSQL hàng đầu, được thiết kế để lưu trữ dữ liệu theo định dạng BSON (một biến thể của JSON), giúp nó trở nên linh hoạt và dễ sử dụng. Được ra mắt vào năm 2009, MongoDB đã nhanh chóng trở thành một trong những lựa chọn phổ biến nhất cho các ứng dụng cần quản lý khối lượng lớn dữ liệu phi cấu trúc hoặc bán cấu trúc do khả năng mở rộng ngang và dọc hiệu quả.

Connect DB

Start_mongo

Tại terminal gõ:

start_mongo

Create a DB:

1
db.createCollection("bigdata")

Insert

1
2
Student_list = [{….}, {….}] 
Db.insertMany(student_list)

Read

Dbmongoimport --db entertainment --collection movies --file movies.json

Remove

xóa 1
1
Db.db_name.remove({}): xóa all

Count

Db_name.count()

Find:

Db_name.findOne(): tìm phần tử đầu tiên
Db_name.find(): list all
Db_name.find().limt(3): list đến 3 phần tử

Create index:

Db.db_name.find({….})
Db.db_name.createIndex({….})
db.bigdata.getIndexes(): laays index

Đo thời gian chạy:

db.bigdata.find({“account_no”: 69271}).explain(“executionStats”).executionStats.executionTimeMillis

Aggregation Framwork

1
2
3
4
5
db.marks.aggregate([{"$sort":{"marks":1}}])
db.marks.aggregate([
{"$sort":{"marks":-1}},
{"$limit":2}
])

Exercise 5 - Group by

The operator $group by, along with operators like $sum, $avg, $min, $max, allows us to perform grouping operations.

This aggregation pipeline prints the average marks across all subjects.

1
2
3
4
5
6
7
8
db.marks.aggregate([
{
"$group":{
"_id":"$subject",
"average":{"$avg":"$marks"}
}
}
])

Use Python

1
2
3
From bson.json_until import dumps
Cursor = students.find({“lastName”: “Doe”})
Print(dumps(cursor, indet = 4))