![]() |
|
![]() |
|
![]() |
คุณสมบัติของการประมวลผลรายการเปลี่ยนแปลงที่จำเป็นเพื่อให้แน่ใจว่าบูรณภาพของข้อมูลยังคงอยู่ และเพื่อเป็นการรักษาความถูกต้องในการทำงานของรายการเปลี่ยนแปลง ระบบจัดการฐานข้อมูลจะต้องรักษา 4 คุณสมบัติหลักของรายการเปลี่ยนแปลงที่เรียกว่า ACID Properties ไว้
ความเป็นอันหนึ่งอันเดียวกัน (Atomicity)การทำรายการเปลี่ยนแปลงแปลงแต่ละรายการจะได้ผลลัพธ์สองอย่าง คือ ได้ผลลัพธ์ตามรายการเปลี่ยนแปลงที่ระบุไว้ หรือไม่ได้ผลลัพธ์อะไรเลย ดังที่กล่าวไว้ข้างต้น เมื่อรายการเปลี่ยนแปลงถูกทำแล้วจะต้องทำให้เสร็จ หรือไม่ทำเลย ถ้าระบบเกิดล้มขึ้นมาก่อนที่จะทำรายการเปลี่ยนแปลงเสร็จแล้ว ผลลัพธ์ที่เกิดจากการทำรายการเปลี่ยนแปลงถึง ณ จุดที่ระบบเกิดความเสียหายนั้นจะไม่ถูกนำมาเขียนลงฐานข้อมูล ดังนั้นเมื่อระบบเริ่มทำงานใหม่ รายการเปลี่ยนแปลงนั้นจะถูกทำใหม่ตั้งแต่เริ่มต้น หรือ ถ้าเกิดความผิดพลาดหรือเกิดกรณีพิเศษระหว่างการทำรายการเปลี่ยนแปลงแล้ว ผลลัพธ์บางส่วนที่เกิดขึ้นจากการทำรายการเปลี่ยนแปลงก็จะถูกยกเลิก และสถานะของฐานข้อมูลก็จะย้อนกลับไป ณ จุดก่อนการทำรายการเปลี่ยนแปลง ยกตัวอย่าง การโอนเงิน ประกอบด้วยการการถอนเงินจากบัญชีหนึ่ง และฝากเงินเข้าอีกบัญชีหนึ่ง การทำรายการเปลี่ยนแปลงของการโอนเงินจะได้ผลลัพธ์ คือ ถอนเงินจากบัญชี และโอนเงินเข้าบัญชีเป็นที่เรียบร้อย หรือ ไม่ทำทั้งสองอย่าง จุดที่รายการเปลี่ยนแปลงที่ถูกทำจนได้ผลลัพธ์เรียบร้อย เรียกว่า จุดที่ทำให้รายการเปลี่ยนแปลงสมบูรณ์ (Commit) และ รายการเปลี่ยนแปลงที่เกิดความผิดพลาดและไม่ถูกทำเลย เรียกว่า การยกเลิกรายการเปลี่ยนแปลง (Abort) ทั้งการทำเสร็จสมบูรณ์และการยกเลิก เรียกว่า เป็นการกระทำที่ไม่สามารถกลับคืนได้ (Irrevocable action) การยกเลิก คือ การลบล้างสิ่งที่ได้ทำไปแล้ว ในปฏิบัติการเกี่ยวกับฐานข้อมูล การยกเลิกคือการนำค่าเดิมก่อนเริ่มทำรายการเปลี่ยนแปลงกลับมาเก็บเป็นค่าปัจจุบัน แต่ในโลกของความจริง การกระทำบางอย่างก็ไม่สามารถถูกยกเลิกได้ เช่น การโอนย้ายเงิน การพิมพ์ตั๋ว การยิงจรวด ตัวอย่างของการกระทำที่ไม่สามารถยกเลิกสิ่งที่ทำไปแล้วได้ คือ การจ่ายเงินของเครื่อง ATM ดังรูปข้างล่าง จากรูปจะพบว่า รูป (ก) สามารถยกเลิกรายการเปลี่ยนแปลงที่เกิดขึ้นหลังจุดสมบูรณ์ของรายการเปลี่ยนแปลงได้เนื่องจากรายการเปลี่ยนแปลงยังไม่ได้ถูกกระทำจนสมบูรณ์ ในรูป (ข) เมื่อระบบเกิดความเสียหายหลังจากรายการ จ่ายเงิน ซึ่งผ่านจุดสมบูรณ์ของรายการเปลี่ยนแปลงมาแล้ว จะไม่สามารถยกเลิกรายการเปลี่ยนแปลง T1 จนถึงบรรทัดของรายการ จ่ายเงิน ได้เนื่องจากผ่านจุดสมบูรณ์ของรายการเปลี่ยนแปลงไปแล้ว รูปที่ 10-1การอ่านเอาท์พุทเมื่อรายการเปลี่ยนแปลงยังไม่ถึงจุดสมบูรณ์ ไม่สามารยกเลิกได้ความถูกต้อง (Consistency)รายการเปลี่ยนแปลงทุกรายการจะต้องรักษาความถูกต้องของฐานข้อมูลเอาไว้ โดยการรักษาบูรณภาพของการอ้างอิงแอททริบิว (Referential Integrity) เช่น การสั่งซื้อสินค้าจะต้องใช้ข้อมูลหมายเลขลูกค้าและหมายเลขสินค้าที่มีอยู่จริงในฐานข้อมูล
จากตัวอย่างข้างบน พบว่า ความถูกต้องจะเกิดขึ้น ถ้า
การแยกตัว (Isolation)รายการเปลี่ยนแปลงแต่ละรายการจะถูกแยกออกจากกัน นั่นคือ ผลลัพธ์จากการทำรายการเปลี่ยนแปลงจะเป็นที่รู้กันก็ต่อเมื่อถึงจุดสมบูรณ์ของรายการเปลี่ยนแปลง ดังนั้นในขณะที่มีการทำรายการเปลี่ยนแปลงรายการหนึ่ง ผลลัพธ์ของรายการเปลี่ยนแปลงนี้จะเปิดเผยแต่รายการเปลี่ยนแปลงอื่นก็ต่อเมื่อถึงจุดสมบูรณ์ของรายการนี้เท่านั้น คุณสมบัตินี้ใช้ได้กับทุกรายการเปลี่ยนแปลง โดยธรรมชาติของรายการเปลี่ยนแปลง ผลลัพธ์จากการทำลำดับของรายการเปลี่ยนแปลงจะต้องเหมือนกันกับการทำรายการเปลี่ยนแปลงแต่ละรายการแยกกัน ถ้ามีการเปลี่ยนแปลงลำดับการทำงานของรายการเปลี่ยนแปลง (interleaved execution) ลำดับที่เปลี่ยนไปนั้นจะมีความเป็นลำดับของการทำงานที่ถูกต้องอยู่ถ้าผลลัพธ์จากการทำงานตามลำดับใหม่นั้นเหมือนกันกับผลลัพธ์ของลำดับเดิม เมื่อผู้ใช้แต่ละคนทำรายการเปลี่ยนแปลงที่เครื่องของตนเอง จะส่งผลให้เกิดรายการเปลี่ยนแปลงจำนวนหลายรายการที่จะต้องถูกกระทำไปพร้อมกัน ซึ่งผลลัพธ์จากการทำรายการเปลี่ยนแปลงในเวลาเดียวกันนี้สามารถทำให้ผลลัพธ์ที่ไม่ถูกต้องได้ ถ้าไม่มีการรักษาลำดับของรายการเปลี่ยนแปลงไว้ ความคงทน (Durability)เมื่อรายการเปลี่ยนแปลงถึงจุดสมบูรณ์ของมันแล้ว ผลลัพธ์จากการทำรายการนี้จะถูกเขียนลงจานแม่เหล็กในฐานข้อมูล และจะยังปรากฏอยู่ในฐานข้อมูล ถึงแม้ว่าหลังจากจุดสมบูรณ์จะเกิดความเสียหายกับระบบอันเนื่องมาจากโปรแกรมประยุกต์ ระบบปฏิบัติการ ระบบฐานข้อมูล หรือจานแม่เหล็ก การเปลี่ยนแปลงที่เกิดจาการทำรายการเปลี่ยนแปลงจะถูกเขียนลงในแฟ้มข้อมูลซึ่งเก็บไว้ในจานแม่เหล็ก ข้อมูลที่บันทึกไว้นี้สามารถนำมาใช้เมื่อระบบฐานข้อมูลถูกเปิดขึ้นมาทำงานใหม่หลังจากความเสียหาย คุณสมบัติดังกล่าวทำให้ผลลัพธ์ของการทำรายการเปลี่ยนแปลงมีความน่าเชื่อถือมากขึ้น |
|
|