ในการออกแบบฐานข้อมูลสำหรับระบบ E-commerce ขนาดใหญ่ ทีมออกแบบถกเถียงกันว่าควรใช้ Normalized Design หรือ Denormalized Design สำหรับตารางสินค้า (Product) สถานการณ์ใดต่อไปนี้เหมาะสมกับการใช้ Denormalization มากที่สุด

เมื่อต้องการประหยัดพื้นที่จัดเก็บข้อมูลในฐานข้อมูล
เมื่อระบบมีการ INSERT และ UPDATE ข้อมูลสินค้าบ่อยครั้งมาก และต้องการความสอดคล้องของข้อมูลสูง
เมื่อทีมพัฒนาไม่มีความชำนาญในการเขียน SQL JOIN ที่ซับซ้อน
เมื่อระบบเป็น Read-Heavy (อ่านมากกว่าเขียน) เช่น หน้าแสดงสินค้า ที่ต้องการดึงข้อมูลหลายตารางเร็วมาก

เฉลยอธิบาย

Denormalization เหมาะสมในกรณี Read-Heavy Systems เพราะการลด JOIN ทำให้ Query เร็วขึ้นมาก แลกกับการยอมรับ Redundancy และความยุ่งยากในการอัปเดต ใน E-commerce หน้าแสดงสินค้ามีคนดูหลายล้านครั้งต่อวัน Denormalization จึงเหมาะ ตัวเลือก A ผิดเพราะ Denormalization ยิ่งทำให้การ UPDATE ยากและเสี่ยงข้อมูลไม่สอดคล้อง ตัวเลือก C เป็นเหตุผลที่ไม่ถูกต้องทางวิชาการ ตัวเลือก D ผิดเพราะ Denormalization ทำให้ใช้พื้นที่มากขึ้น ไม่ใช่น้อยลง

ข้อสอบอื่นในวิชาความรู้ความสามารถในการวิเคราะห์ ออกแบบ ฐานข้อมูล

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