ฐานข้อมูลเชิงสัมพันธ์ได้รับการออกแบบด้วยความน่าเชื่อถือและความสม่ำเสมอที่แกนกลาง วิศวกรผู้พัฒนาพวกเขามุ่งเน้นไปที่รูปแบบการทำธุรกรรมเพื่อให้แน่ใจว่าสี่หลักการของรูปแบบ ACID จะถูกเก็บรักษาไว้เสมอ อย่างไรก็ตามการถือกำเนิดขึ้นของรูปแบบฐานข้อมูลที่ไม่มีโครงสร้างใหม่จะเปลี่ยนกรดบนหัวของมัน รูปแบบฐานข้อมูล NoSQL หลีกเลี่ยงรูปแบบเชิงสัมพันธ์ที่มีโครงสร้างสูงเพื่อสนับสนุนวิธีการจัดเก็บคีย์ / ค่าที่ยืดหยุ่น วิธีการที่ไม่มีโครงสร้างนี้กับข้อมูลต้องเป็นทางเลือกให้กับรูปแบบ ACID: รูปแบบ BASE
หลักการพื้นฐานของรูปแบบ ACID
มีหลักการพื้นฐานสี่ประการของ ACID:
- atomicity ของการทำธุรกรรมเพื่อให้แน่ใจว่าการทำธุรกรรมฐานข้อมูลแต่ละรายการเป็นหน่วยเดียวที่ใช้แนวทาง "ทั้งหมดหรือไม่มีเลย" ในการดำเนินการ ถ้ารายการในธุรกรรมล้มเหลวธุรกรรมทั้งหมดจะถูกยกเลิก
- ฐานข้อมูลเชิงสัมพันธ์ยังมั่นใจว่า ความมั่นคง ของแต่ละธุรกรรมด้วยกฎเกณฑ์ทางธุรกิจของฐานข้อมูล ถ้าองค์ประกอบใดของการทำธุรกรรมอะตอมจะขัดขวางความสอดคล้องของฐานข้อมูลธุรกรรมทั้งหมดล้มเหลว
- เครื่องมือฐานข้อมูล enforces ความเหงา ระหว่างธุรกรรมหลายรายการที่เกิดขึ้นในเวลาใกล้เคียงหรือใกล้เคียงกัน แต่ละธุรกรรมเกิดขึ้นก่อนหรือหลังการทำธุรกรรมอื่น ๆ ทั้งหมดและมุมมองของฐานข้อมูลที่ธุรกรรมเห็นที่จุดเริ่มต้นจะถูกเปลี่ยนแปลงโดยการทำธุรกรรมเองก่อนสรุปเท่านั้น ไม่ควรทำธุรกรรมใด ๆ ในผลิตภัณฑ์ระดับกลางของธุรกรรมอื่น
- หลักการสุดท้ายของกรด (ACID) ความทนทานเพื่อให้แน่ใจว่าเมื่อมีการทำธุรกรรมกับฐานข้อมูลแล้วจะมีการเก็บรักษาไว้อย่างถาวรโดยใช้การสำรองข้อมูลและบันทึกการทำรายการ ในกรณีที่เกิดความล้มเหลวระบบอาจใช้กลไกเหล่านี้เพื่อเรียกคืนธุรกรรมที่ได้ทำไว้
หลักการพื้นฐานของ BASE
ฐานข้อมูล NoSQL ตรงกันข้ามกอดสถานการณ์ที่รูปแบบของกรดเป็น overkill หรือในความเป็นจริงขัดขวางการดำเนินงานของฐานข้อมูล แทน NoSQL อาศัยรูปแบบที่นุ่มนวลที่รู้จักกันดีเป็นรูปแบบ BASE รูปแบบนี้รองรับความยืดหยุ่นที่นำเสนอโดย NoSQL และแนวทางที่คล้ายกันในการจัดการและการจัดการข้อมูลที่ไม่มีโครงสร้าง ฐานประกอบด้วยสามหลักการ:
- ความพร้อมใช้งานพื้นฐาน. วิธีการฐานข้อมูล NoSQL จะเน้นที่ความพร้อมใช้งานของข้อมูลแม้ว่าจะมีความล้มเหลวหลายครั้งก็ตาม บรรลุเป้าหมายนี้โดยใช้วิธีการกระจายข้อมูลอย่างมากในการจัดการฐานข้อมูล แทนที่จะเก็บรักษาข้อมูลขนาดใหญ่เพียงอย่างเดียวและมุ่งเน้นไปที่การจัดเก็บข้อมูลผิดพลาดฐานข้อมูล NoSQL จะกระจายข้อมูลไปยังระบบจัดเก็บข้อมูลหลายแห่งที่มีการจำลองแบบสูง ในเหตุการณ์ที่ไม่น่าจะเกิดขึ้นหากความล้มเหลวขัดขวางการเข้าถึงส่วนของข้อมูลสิ่งนี้ไม่จำเป็นต้องทำให้เกิดการหยุดทำงานของฐานข้อมูลที่สมบูรณ์
- รัฐอ่อน. ฐานข้อมูล BASE ละทิ้งข้อกำหนดที่สอดคล้องกันของแบบจำลอง ACID สวยมากสมบูรณ์ หนึ่งในแนวคิดพื้นฐานเบื้องหลัง BASE คือความสอดคล้องของข้อมูลเป็นปัญหาของผู้พัฒนาและไม่ควรจัดการโดยฐานข้อมูล
- ความสม่ำเสมอในท้ายที่สุด. ข้อกำหนดเฉพาะที่ฐานข้อมูล NoSQL มีเกี่ยวกับความสอดคล้องกันคือการกำหนดให้ในบางประเด็นในอนาคตข้อมูลจะมาบรรจบกันเป็นสถานะที่สอดคล้องกัน อย่างไรก็ตามไม่มีการค้ำประกันใด ๆ เกี่ยวกับกรณีนี้จะเกิดขึ้น นั่นคือการออกจากข้อบังคับ ACID ที่มีผลบังคับใช้ทันทีที่ห้ามทำธุรกรรมจนกว่าจะมีการทำธุรกรรมเสร็จสิ้นและฐานข้อมูลได้แปรสภาพไปสู่สถานะที่สอดคล้องกัน
รูปแบบฐานไม่เหมาะสำหรับทุกสถานการณ์ แต่ก็เป็นทางเลือกที่ยืดหยุ่นสำหรับรูปแบบ ACID สำหรับฐานข้อมูลที่ไม่จำเป็นต้องมีการยึดมั่นอย่างเคร่งครัดกับรูปแบบเชิงสัมพันธ์




