Thực hiện các bước sau:
• Viết aggregation pipeline gồm $match (lọc price > 300) và $group theo address.country (đếm số listing vào trường soLuong)
• Chạy pipeline với explain("executionStats") khi chưa có index
• Tạo index tăng dần cho price và in tên index
• Chạy lại pipeline với explain("executionStats") và so sánh hiệu quả (số key/document phải duyệt)
Lưu ý: kết quả explain đầy đủ chứa thông tin máy chủ và thời gian chạy (thay đổi mỗi lần chạy) nên không in toàn bộ. Code khởi tạo có sẵn hàm hỗ trợ cacStage(ketQuaExplain) trả về mảng tên các stage của winning plan (từ ngoài vào trong, ví dụ [ 'FETCH', 'IXSCAN' ]). Chỉ cần điền vào các chỗ TODO và giữ nguyên các lệnh print; chương trình không được in thêm gì khác. Không cần lệnh use.
Collection listingsAndReviews (dữ liệu mẫu sample_airbnb.listingsAndReviews) đã được nạp sẵn.
In đúng 9 dòng, theo thứ tự:
nReturned, totalKeysExamined, totalDocsExaminedcreateIndex)nReturned, totalKeysExamined, totalDocsExaminedVí dụ định dạng (không phải đáp án):
[ 'GROUP', 'COLLSCAN' ]
9
0
1000
field_1
[ 'GROUP', 'FETCH', 'IXSCAN' ]
9
200
200
Ví dụ:
Đầu vào:
sample_airbnb.listingsAndReviews
Đầu ra:
[ 'GROUP', 'COLLSCAN' ]
9
0
5555
price_1
[ 'GROUP', 'FETCH', 'IXSCAN' ]
9
1225
1225
Đang tải editor...