Partial Indexes
Exercise
0. เตรียมระบบ (ถ้ายังไม่ได้ทำ)
สร้าง mongodb cluster บน mongoDB Atlas และเชื่อมต่อกับ Mongo Cluster
1. ทดสอบ Partial Index
- จาก database sample_mflix ให้เลือก movies collection มาใช้ทดสอบ
- ในช่อง Query ให้ใส่คำสั่งดังนี้ และกดปุ่ม Find
{
"year": { "$gte": 1900 }
}
- ตรวจสอบผลลัพธ์ที่ได้ จะเป็นหนังที่มีปีเข้าฉายตั้งแต่ปี 1900 ขึ้นไป
- กดปุ่ม Explain และสังเกตค่าการทำงานต่อไปนี้
- Plan
- Document examined
- Document returned
- Execution Time
- กดปิดหน้าต่าง explain และกลับมาที่หน้าจอเดิม
- กด tab Indexes และสังเกตว่ามี index อะไรบ้าง
- กดปุ่ม Create Index และสร้าง index ใหม่ โดยใช้ field year และเลือกเป็น ascending (1)
- กดเปิด option และเลือก partial expression และใส่ด้านล่างลงไป
- ใส่ค่าดังนี้
{
"year": { "$gte": 1900 }
}
- กดสร้าง index
- กลับมาที่ tab documents ให้ทำการกดปุ่ม reset เพื่อล้างค่า Query ที่เคยใส่ไว้ และกดปุ่ม find อีกครั้ง
- กดปุ่ม Explain และสังเกตค่าการทำงานต่อไปนี้
- Plan (สังเกตว่าเป็น Collscan)
- Document examined
- Document returned
- Execution Time
- กลับมาที่ tab documents ให้ทำการเลือก Query ใหม่อีกครั้ง
- กดปุ่ม Explain และสังเกตค่าการทำงานต่อไปนี้
- Plan (สังเกตว่าเป็น Collscan)
- Document examined
- Document returned
- Execution Time
- กลับมาที่ tab documents ให้ทำการเลือก Query ใหม่อีกครั้ง
{
"year": { "$gte": 1900 }
}
- กดปุ่ม Explain และสังเกตค่าการทำงานต่อไปนี้
- Plan (สังเกตว่าเป็น IXSCAN แล้ว’)
- Document examined
- Document returned
- Execution Time