มันทำงานได้เช่นนี้:
ระบบปฏิบัติการส่วนใหญ่มีการเรียกระบบที่อนุญาตให้เรียกว่า "การเขียนแบบซิงโครนัส" ซึ่งหมายความว่าในระหว่างการดำเนินการเขียนถ้าการเขียนเสร็จสิ้นก็รับประกันได้ว่ามันได้มุ่งมั่นที่จะดิสก์
การเขียนแบบซิงโครนัสจึงไม่ใช่แคช มันบล็อกแอปพลิเคชันจนกว่าจะเสร็จสมบูรณ์ การทำงานแบบนี้ช้ากว่าการเขียนแบบแคชซึ่งเก็บข้อมูลไว้ในหน่วยความจำระบบปฏิบัติการจนกว่าดิสก์จะไม่ได้ทำงานและเขียนข้อมูล
ซอฟต์แวร์ที่สำคัญบางตัวเช่นซอฟต์แวร์ฐานข้อมูลทำการเขียนแบบซิงโครนัสสำหรับข้อมูลสำคัญเนื่องจากการอัพเดตแบบครึ่งเขียนในกรณีที่ไฟฟ้าดับอาจเป็นอันตรายต่อความสมบูรณ์ของฐานข้อมูล
ตัวควบคุม RAID ช้าฉาวโฉ่กับการเขียน RAID-5 ดังนั้นนี่จะกลายเป็นปัญหาหากแอพพลิเคชั่นซอฟต์แวร์ของคุณใช้การเขียนแบบซิงโครนัสจำนวนมาก ด้วยเหตุนี้คอนโทรลเลอร์ RAID-5 จึงติดตั้งแคชของตัวเอง
สิ่งที่ตัวควบคุม RAID ทำคือเขียนข้อมูลไปยังแคชแทนและ LIES ไปยังระบบปฏิบัติการบอกว่าให้ส่งข้อมูลไปยังดิสก์ในขณะที่ข้อมูลยังอยู่ในแคช RAID
แต่ถ้าเกิดไฟฟ้าดับในขณะที่ข้อมูลยังอยู่ในบัฟเฟอร์ของคอนโทรลเลอร์ RAID? คุณมีข้อมูลที่เขียนครึ่งหนึ่งและอาจไม่สอดคล้องกับดิสก์ของคุณ
คุณอาจบอกว่าพฤติกรรมนี้เอาชนะจุดประสงค์ของการเขียนแบบซิงโครนัส ... ถ้าการเขียนแคชนั้นเป็นเรื่องปกติซอฟต์แวร์แอพจะไม่ขอให้มีการเขียนแบบซิงค์ในตอนแรก
การประนีประนอมคือ: ตัวควบคุม RAID ยังคงอยู่กับระบบปฏิบัติการที่ให้ข้อมูลกับดิสก์ แต่เพื่อปกป้องข้อมูลที่สำคัญนี้ในกรณีที่ไฟฟ้าขัดข้อง RAID คอนโทรลเลอร์มีแบตเตอรี่ที่ช่วยให้แคชมีชีวิตอยู่ได้จนกว่าพลังงานจะหมด การบูรณะ
ดังนั้นหลังจากพลังงานกลับมาและดิสก์หมุนและเริ่มต้นใช้งานคอนโทรลเลอร์ยังคงมีข้อมูลนั้นอยู่ในแคชด้วยแบตเตอรี่และสามารถเขียนธุรกรรมของคุณลงในดิสก์ได้
ทุกคนมีความสุข
นี่คือสาเหตุที่คอนโทรลเลอร์ RAID มักจะไม่ยอมให้คุณเปิดใช้งานแคชเขียนเว้นแต่ว่าคุณจะมีหน่วยแบตเตอรี่ที่ใช้งานได้และมีประจุ