Compound Indexes with Sort
Exercise
0. เตรียมระบบ (ถ้ายังไม่ได้ทำ)
สร้าง mongodb cluster บน mongoDB Atlas และเชื่อมต่อกับ Mongo Cluster
1. ทดสอบ Compound Index with sort
- จาก database sample_mflix ให้เลือก movies collection มาใช้ทดสอบ
- ในช่อง Query ให้ใส่รายละเอียดคำสั่งดังนี้ และกดปุ่ม Find
Option > Sort
{ "tomatoes.viewer.meter": -1 }
- ตรวจสอบผลลัพธ์ที่ได้ จะเป็นหนังปี 2000 ที่ sort ตาม tomatoes.viewer.meter จากมากไปน้อย
- กดปุ่ม Explain และสังเกตค่าการทำงานต่อไปนี้
- Plan (สังเกตว่า Sort in memory)
- Document examined
- Document returned
- Execution Time
- กดปิดหน้าต่าง explain และกลับมาที่หน้าจอเดิม
- กด tab Indexes และสังเกตว่ามี index อะไรบ้าง
- กดปุ่ม Create Index และสร้าง index ใหม่ โดยใช้ field year และ tomatoes.viewer.meter และเลือกเป็น ascending (1) และ descending (-1) ตามลำดับ
- กลับมาที่ tab documents ให้ทำการเลือก Query ใหม่อีกครั้ง
Option > Sort
{ "tomatoes.viewer.meter": -1 }
- กดปุ่ม find และตรวจสอบผลลัพธ์ที่ได้
- กดปุ่ม Explain และสังเกตค่าการทำงานต่อไปนี้
- Plan
- Document examined
- Document returned
- Execution Time
- สังเกตว่า Sort in memory จะหายไป และจะเป็นการใช้ index ที่สร้างขึ้นมาใหม่