ละเลยกรดในความโปรดปรานของพื้นฐานในด้านวิศวกรรมฐานข้อมูล

ฐานข้อมูลเชิงสัมพันธ์ได้รับการออกแบบด้วยความน่าเชื่อถือและความสม่ำเสมอที่แกนกลาง วิศวกรผู้พัฒนาพวกเขามุ่งเน้นไปที่รูปแบบการทำธุรกรรมเพื่อให้แน่ใจว่าสี่หลักการของ รูปแบบ ACID จะถูกเก็บรักษาไว้เสมอ อย่างไรก็ตามการถือกำเนิดขึ้นของรูปแบบฐานข้อมูลที่ไม่มีโครงสร้างใหม่จะเปลี่ยนกรดบนหัวของมัน รูปแบบฐานข้อมูล NoSQL หลีกเลี่ยง รูปแบบ เชิงสัมพันธ์ที่มีโครงสร้างสูงเพื่อสนับสนุนวิธีการจัดเก็บคีย์ / ค่าที่ยืดหยุ่น วิธีการที่ไม่มีโครงสร้างนี้กับข้อมูลต้องเป็นทางเลือกให้กับรูปแบบ ACID: รูปแบบ BASE

หลักการพื้นฐานของรูปแบบ ACID

มีหลักการพื้นฐานสี่ประการของ ACID:

ความเป็น ปึกแผ่น ของการทำธุรกรรมทำให้แน่ใจได้ว่าการทำธุรกรรมฐานข้อมูลแต่ละครั้งเป็นหน่วยเดียวที่ใช้แนวทาง "ทั้งหมดหรือไม่มีเลย" ในการดำเนินการ ถ้ารายการในธุรกรรมล้มเหลวธุรกรรมทั้งหมดจะถูกยกเลิก

ฐานข้อมูลเชิงสัมพันธ์ยังให้ความ สอดคล้อง ของแต่ละธุรกรรมกับกฎเกณฑ์ทางธุรกิจของฐานข้อมูล ถ้าองค์ประกอบใดของการทำธุรกรรมอะตอมจะขัดขวางความสอดคล้องของฐานข้อมูลธุรกรรมทั้งหมดล้มเหลว

เครื่องมือฐานข้อมูลบังคับใช้ การแยก ระหว่างธุรกรรมหลายรายการที่เกิดขึ้นในเวลาใกล้เคียงหรือใกล้เคียงกัน แต่ละธุรกรรมเกิดขึ้นก่อนหรือหลังการทำธุรกรรมอื่น ๆ ทั้งหมดและมุมมองของฐานข้อมูลที่ธุรกรรมเห็นที่จุดเริ่มต้นจะถูกเปลี่ยนแปลงโดยการทำธุรกรรมเองก่อนสรุปเท่านั้น ไม่ควรทำธุรกรรมใด ๆ ในผลิตภัณฑ์ระดับกลางของธุรกรรมอื่น

หลักการ ACID ขั้นสุดท้าย ความทนทาน ช่วยให้มั่นใจได้ว่าเมื่อมีการทำธุรกรรมกับฐานข้อมูลจะได้รับการเก็บรักษาไว้อย่างถาวรโดยใช้การสำรองข้อมูลและบันทึกการทำรายการ ในกรณีที่เกิดความล้มเหลวระบบอาจใช้กลไกเหล่านี้เพื่อเรียกคืนธุรกรรมที่ได้ทำไว้

หลักการพื้นฐานของ BASE

ฐานข้อมูล NoSQL ตรงกันข้ามกอดสถานการณ์ที่รูปแบบของกรดเป็น overkill หรือในความเป็นจริงขัดขวางการดำเนินงานของฐานข้อมูล แทน NoSQL อาศัยรูปแบบที่นุ่มนวลที่รู้จักกันดีเป็นรูปแบบ BASE รูปแบบนี้รองรับความยืดหยุ่นที่นำเสนอโดย NoSQL และแนวทางที่คล้ายกันในการจัดการและการจัดการข้อมูลที่ไม่มีโครงสร้าง ฐานประกอบด้วยสามหลักการ:

ความพร้อมใช้งานพื้นฐาน วิธีการฐานข้อมูล NoSQL จะเน้นที่ความพร้อมใช้งานของข้อมูลแม้ว่าจะมีความล้มเหลวหลายครั้งก็ตาม บรรลุเป้าหมายนี้โดยใช้วิธีการกระจายข้อมูลอย่างมากในการจัดการฐานข้อมูล แทนที่จะเก็บรักษาข้อมูลขนาดใหญ่เพียงอย่างเดียวและมุ่งเน้นไปที่การจัดเก็บข้อมูลผิดพลาดฐานข้อมูล NoSQL จะกระจายข้อมูลไปยังระบบจัดเก็บข้อมูลหลายแห่งที่มีการจำลองแบบสูง ในเหตุการณ์ที่ไม่น่าจะเกิดขึ้นหากความล้มเหลวขัดขวางการเข้าถึงส่วนของข้อมูลสิ่งนี้ไม่จำเป็นต้องทำให้เกิดการหยุดทำงานของฐานข้อมูลที่สมบูรณ์

รัฐอ่อน ฐานข้อมูล BASE ละทิ้งข้อกำหนดที่สอดคล้องกันของแบบจำลอง ACID สวยมากสมบูรณ์ หนึ่งในแนวคิดพื้นฐานเบื้องหลัง BASE คือความสอดคล้องของข้อมูลเป็นปัญหาของผู้พัฒนาและไม่ควรจัดการโดยฐานข้อมูล

ความสม่ำเสมอในท้ายที่สุด ข้อกำหนดเฉพาะที่ฐานข้อมูล NoSQL มีเกี่ยวกับความสอดคล้องกันคือการกำหนดให้ในบางประเด็นในอนาคตข้อมูลจะมาบรรจบกันเป็นสถานะที่สอดคล้องกัน อย่างไรก็ตามไม่มีการค้ำประกันใด ๆ เกี่ยวกับกรณีนี้จะเกิดขึ้น นั่นคือการออกจากข้อบังคับ ACID ที่มีผลบังคับใช้ทันทีที่ห้ามทำธุรกรรมจนกว่าจะมีการทำธุรกรรมเสร็จสิ้นและฐานข้อมูลได้แปรสภาพไปสู่สถานะที่สอดคล้องกัน

รูปแบบฐานไม่เหมาะสำหรับทุกสถานการณ์ แต่ก็เป็นทางเลือกที่ยืดหยุ่นสำหรับรูปแบบ ACID สำหรับฐานข้อมูลที่ไม่จำเป็นต้องมีการยึดมั่นอย่างเคร่งครัดกับรูปแบบเชิงสัมพันธ์