Giới thiệu
MongoDB là một trong những cơ sở dữ liệu NoSQL phổ biến nhất hiện nay. Trong bài viết này, tôi sẽ hướng dẫn bạn cách sử dụng MongoDB Compass để chèn dữ liệu, thực hiện truy vấn và phân tích. Hãy cùng khám phá cách làm việc với MongoDB một cách hiệu quả nhất!
Mục lục
- Cài đặt MongoDB
- Tạo Cơ Sở Dữ Liệu và Bộ Sưu Tập
- Top 5 Doanh Nghiệp Theo Đánh Giá Trung Bình
- Tìm Kiếm Đánh Giá Chứa Từ “good”
- Truy Vấn Đánh Giá Cho Một Doanh Nghiệp Cụ Thể
- Cập Nhật Một Đánh Giá
- Xóa Một Hồ Sơ
- Xuất Kết Quả Truy Vấn
- Kết Luận
- Câu Hỏi Thường Gặp
Cài đặt MongoDB
Để bắt đầu, tôi đã cài đặt MongoDB Community Server và MongoDB Compass để tương tác qua giao diện đồ họa.
Bạn có thể tải xuống MongoDB từ trang chính thức MongoDB Download Center và làm theo hướng dẫn cài đặt.
Lưu ý:
- Đảm bảo bạn đã cài đặt Java Development Kit (JDK) nếu cần thiết để chạy MongoDB.
Tạo Cơ Sở Dữ Liệu và Bộ Sưu Tập
Bước 1: Tạo Cơ Sở Dữ Liệu
- Tạo cơ sở dữ liệu:
mydb - Tạo bộ sưu tập:
reviews
Bước 2: Chèn Dữ Liệu
Tôi đã chèn 10 tài liệu thủ công như sau:
json
{ "business_id": 1, "name": "Pizza Point", "review": "The pizza was good", "rating": 4 }
{ "business_id": 2, "name": "Book World", "review": "Good variety of books", "rating": 5 }
...
Top 5 Doanh Nghiệp Theo Đánh Giá Trung Bình
Để lấy top 5 doanh nghiệp có đánh giá trung bình cao nhất, tôi đã sử dụng tab Aggregations trong MongoDB Compass:
Bước 1: Nhóm
json
{
"$group": {
"_id": "$business_id",
"name": { "$first": "$name" },
"avgRating": { "$avg": "$rating" }
}
}
Bước 2: Sắp xếp
json
{ "avgRating": -1 }
Bước 3: Giới hạn
json
{ "$limit": 5 }
Tìm Kiếm Đánh Giá Chứa Từ “good”
Để tìm kiếm các đánh giá có chứa từ “good”, tôi đã sử dụng thanh Filter:
json
{ "review": { "$regex": "good", "$options": "i" } }
Truy Vấn Đánh Giá Cho Một Doanh Nghiệp Cụ Thể
Để tìm đánh giá cho doanh nghiệp có business_id là 2, tôi đã sử dụng truy vấn sau:
json
{ "business_id": 2 }
Cập Nhật Một Đánh Giá
Để cập nhật đánh giá cho doanh nghiệp có business_id là 2, tôi đã sử dụng truy vấn sau:
json
{ "business_id": 2 },
{ "$set": { "review": "Excellent variety of books" } }
Xóa Một Hồ Sơ
Trước khi xóa, bạn có thể kiểm tra số lượng bản ghi:
- Trước khi xóa
- Sau khi xóa
Xuất Kết Quả Truy Vấn
Trong MongoDB Compass, bạn có thể xuất kết quả truy vấn bằng cách đi đến mục Aggregations → Xuất → JSON/CSV.
Ví dụ: tôi đã xuất top 5 doanh nghiệp dưới dạng JSON:
json
[{
"_id": {
"$oid": "68c1aa6ed8d3811853f084ec"
},
"business_id": 1,
"name": "Cafe Delight",
"rating": 4,
"review": "good coffee and snacks"
},
{
"_id": {
"$oid": "68c1aa6ed8d3811853f084ed"
},
"business_id": 2,
"name": "Food Haven",
"rating": 5,
"review": "excellent food and good staff"
},
{
"_id": {
"$oid": "68c1aa6ed8d3811853f084ee"
},
"business_id": 3,
"name": "Tech Store",
"rating": 3,
"review": "service improved a lot, very good now"
},
{
"_id": {
"$oid": "68c1aa6ed8d3811853f084ef"
},
"business_id": 4,
"name": "Book World",
"rating": 5,
"review": "good collection of books"
},
]
Kết Luận
Bài viết này đã cung cấp cho bạn một cái nhìn tổng quan nhanh chóng về các tính năng cơ bản của MongoDB thông qua MongoDB Compass:
- Chèn tài liệu
- Thực hiện truy vấn
- Tính toán kết quả
- Cập nhật và xóa hồ sơ
- Xuất dữ liệu dưới dạng JSON/CSV
MongoDB Compass giúp bạn dễ dàng làm việc với dữ liệu mà không cần phải ghi nhớ tất cả các lệnh.
Câu Hỏi Thường Gặp
- MongoDB là gì?
MongoDB là một cơ sở dữ liệu NoSQL, cho phép lưu trữ dữ liệu theo định dạng tài liệu. - Làm thế nào để cài đặt MongoDB trên máy tính của tôi?
Bạn có thể tải xuống và cài đặt từ MongoDB Download Center. - Có nên sử dụng MongoDB cho dự án của tôi không?
Nếu bạn cần mở rộng linh hoạt và hiệu suất cao, MongoDB là lựa chọn tốt.
Thực Hành Tốt Nhất
- Luôn sao lưu dữ liệu trước khi thực hiện thay đổi lớn.
- Thực hiện kiểm tra thường xuyên để đảm bảo hiệu suất của cơ sở dữ liệu.
Cạm Bẫy Thường Gặp
- Không tối ưu hóa các truy vấn có thể dẫn đến hiệu suất kém.
- Không quản lý các chỉ mục sẽ làm chậm tốc độ truy vấn.
Mẹo Hiệu Suất
- Sử dụng chỉ mục để tăng tốc độ truy vấn.
- Thực hiện phân đoạn dữ liệu khi cần thiết.
Khắc Phục Sự Cố
- Nếu gặp lỗi kết nối, hãy kiểm tra cấu hình và trạng thái của MongoDB.
- Kiểm tra các truy vấn để đảm bảo chúng được tối ưu hóa đúng cách.