กรณีวิเคราะห์ฐานข้อมูล 10248d4cbb9b16928822cddbb8d4f161bf6a876bb8405dd04b8b27fe5c2ff80f: เมื่อปรับปรุงระบบ ควรป้องกันความผิดพลาด รักษาความถูกต้อง และลดผลกระทบของ บริษัทเทคโนโลยีใหญ่มีฐานข้อมูลขนาดใหญ่ที่จำเป็นต้องค้นหาข้อมูลจากตาราง Customer ที่มีข้อมูลมากกว่า 100 ล้านแถว ทุกวันมีการค้นหาเกือบ 1 ล้านครั้ง ปัญหาด้านประสิทธิภาพคืออะไร และแนวทางแก้ไขควรเป็นอย่างไร?

ปัญหามีผู้ใช้มากเกินไป ต้องจำกัดจำนวนผู้ใช้พร้อมกัน
ปัญหากำลังสแกนตารางทั้งหมด (Full Table Scan) ต้องสร้างดัชนี (Index) หรือพาร์ติชั่น (Partitioning) เพื่อค้นหาข้อมูลได้เร็วขึ้น
ปัญหาการแก้ไขข้อมูลที่ช้า ต้องลดจำนวน Index
ปัญหาการใช้ CPU มากเกินไป ต้องเลิกใช้ Foreign Key

เฉลยอธิบาย

เมื่อตารางมีข้อมูลจำนวนมากมา และต้องค้นหาบ่อย ปัญหาหลักคือการ Full Table Scan ซึ่งต้องตรวจสอบแถวทั้งหมด วิธีแก้ไขคือสร้าง Index บนคอลัมน์ที่มักจะค้นหา (เช่น Customer ID) หรือใช้ Partitioning เพื่อแบ่งข้อมูลออกเป็นส่วน ๆ ตัวเลือก B ไม่ถูกต้องเพราะ Foreign Key ไม่ใช่ปัญหา ตัวเลือก C ไม่ถูกต้องเพราะลด Index จะทำให้ค้นหาช้าลง และตัวเลือก D เกี่ยวกับ Concurrency ไม่ใช่ปัญหาหลักสำหรับการค้นหา

ข้อสอบอื่นในวิชาความรู้เกี่ยวกับระบบฐานข้อมูล (Database System) และ ระบบการบริหารจัดการข้อมูล (Database Management System)

ดูข้อสอบวิชานี้ทั้งหมด →