กรณีวิเคราะห์ฐานข้อมูล 9d62cc66c1829369a3f0578d65d19e409ed950d00f92f305b4a842d4d6f20a90: หากต้องออกแบบระบบ ควรคำนึงถึงความถูกต้อง ความปลอดภัย และผลกระทบเกี่ยวกับ ถ้าฐานข้อมูลต้องการอัปเดตข้อมูลจำนวนมากพร้อมกัน เช่น เพิ่มเงินเดือนของพนักงานทั้งองค์กรขึ้น 5 เปอร์เซ็นต์ แต่ระหว่างการทำงานเกิดข้อผิดพลาดของระบบ การออกแบบฐานข้อมูลควรทำให้แน่ใจว่า?
กใช้ระบบสำรองข้อมูลเพื่อคืนข้อมูลเมื่อล้มเหลว
ขใช้การทำงานแบบตระเวนทั้งหมดหรือไม่ได้ (All-or-Nothing Transaction) โดยหากล้มเหลวจะสามารถกลับคืนสู่สถานะเดิมได้
คส่งข้อความเตือนให้ผู้ใช้ว่าการสอบถามใช้เวลา
งบันทึกข้อมูลแต่ละแถวแยกต่างหากเพื่อให้บางแถวสำเร็จแม้ว่าบางแถวจะล้มเหลว
เฉลยอธิบาย
แนวคิด Transaction ในฐานข้อมูล ตามหลักการ ACID (Atomicity, Consistency, Isolation, Durability) คือการดำเนินการ All-or-Nothing ซึ่งหมายความว่า ถ้าการอัปเดตสำเร็จทั้งหมด ข้อมูลจะได้รับการบันทึก แต่ถ้ามีข้อผิดพลาดในขั้นตอนใดขั้นตอนหนึ่ง ทั้งการอัปเดตจะถูก Rollback คืนไปสู่สถานะเดิม ตัวเลือก B ขัดต่อหลักการ Atomicity ตัวเลือก C เป็นวิธีที่แพงและช้า ตัวเลือก D ไม่เกี่ยวข้องกับปัญหา