![]() |
|
![]() |
|
![]() |
การกู้คืนระบบความสามารถในการกู้คืนจะเป็นตัวช่วยให้ระบบฐานข้อมูลสามารถกลับสู่สภาพเดิมก่อนที่ระบบจะเกิดความเสียหายได้ และจะต้องรักษาบูรณภาพของข้อมูลไว้ได้ทั้งหมด โดยรักษาสถานะของข้อมูลที่เป็นผลลัพธ์ของรายการเปลี่ยนแปลงเมื่อผ่านจุดสมบูรณ์แล้วไว้ และเพิกเฉยต่อผลลัพธ์ที่เกิดจากรายการเปลี่ยนแปลงที่ยังไม่ผ่านจุดสมบูรณ์ ตามคุณสมบัติความเป็นอันหนึ่งอันเดียวกัน (Atomicity) และความคงทน (Durability) ความเสียหายของระบบฐานข้อมูลเกิดขึ้นได้จากหลายสาเหตุ เช่น ความเสียหายอันเนื่องมาจากแหล่งเก็บข้อมูล ระบบจ่ายไฟ ซอฟต์แวร์ เป็นต้น เมื่อมีความเกิดความเสียหายเกิดขึ้นกับฐานข้อมูล รายการเปลี่ยนแปลงที่ถูกกระทำไปแล้วและยังไม่ผ่านจุดสมบูรณ์ของรายการเปลี่ยนแปลงจะต้องถูกยกเลิก สถานะของฐานข้อมูลจะถูกกู้กลับให้เหมือนกับสถานะก่อนการทำรายการเปลี่ยนแปลง ซึ่งยังผลให้รายการเปลี่ยนแปลงที่มีความสัมพันธ์กับรายการเปลี่ยนแปลงดังกล่าวจะต้องถูกยกเลิกด้วย ลำดับการทำงานของรายการเปลี่ยนแปลงที่มีผลกับการกู้คืน แบ่งออกเป็น 2 ประเภท คือ
ลำดับของรายการการเปลี่ยนแปลงที่ถูกสร้างขึ้นเพื่อรอการประมวลผลจะต้องเป็นลำดับที่สามารถกู้คืนภายหลังได้ ตัวอย่างลำดับรายการเปลี่ยนแปลงทั้งสองประเภท แสดงได้ดังลำดับข้างล่างนี้ รูปที่ 2-3 การจัดลำดับรายการเปลี่ยนแปลงแบบกู้คืนได้รูปที่ 2-4การจัดลำดับรายการเปลี่ยนแปลงแบบกู้คืนได้จากการจัดลำดับข้างต้น เมื่อระบบเกิดความเสียหายหลังจากลำดับที่ 2 ได้ผ่านจุดสมบูรณ์ไปแล้ว ในขณะที่ลำดับที่ 1 ยังไม่ถึงจุดสมบูรณ์ เป็นผลให้ Read(A), Write(A) และ Read(B) ในลำดับที่ 1 ถูกยกเลิกทั้งหมด ในขณะที่ลำดับที่สองไม่ถูกยกเลิก เหตุการณ์นี้เป็นผลให้ฐานข้อมูลอยู่ในสถานะที่ไม่มั่นคง เนื่องจากสูญเสียบูรณภาพของข้อมูลจาก Read(A) ของลำดับที่ 2 ซึ่งเป็นผลมาจาก Write(A) ของลำดับที่ 1 ดังนั้นระบบจัดการฐานข้อมูลจะต้องจัดลำดับของรายการเปลี่ยนแปลงให้ลำดับที่ 2 ผ่านจุดสมบูรณ์หลังจากลำดับผ่านจุดสมบูรณ์แล้วเสียก่อน เพื่อรักษาบูรณภาพของข้อมูลไว้ |
|
|