mongodb-dba-workshop

Partial Indexes

Exercise

0. เตรียมระบบ (ถ้ายังไม่ได้ทำ)

สร้าง mongodb cluster บน mongoDB Atlas และเชื่อมต่อกับ Mongo Cluster

1. ทดสอบ Partial Index

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