ทฤษฎีบท CAP: มันคืออะไรและมีความหมายอย่างไรสำหรับคุณ
เผยแพร่แล้ว: 2022-11-18ในการคำนวณ ทฤษฎีบท CAP หรือที่เรียกว่าทฤษฎีบทของบรูเออร์ระบุว่าเป็นไปไม่ได้ ที่ที่เก็บข้อมูล แบบกระจายจะให้การรับประกันมากกว่าสองในสามประการต่อไปนี้พร้อมกัน: ความสอดคล้อง: การอ่านทุกครั้งได้รับการเขียนล่าสุดหรือข้อผิดพลาด ความพร้อมใช้งาน: ทุกคำขอจะได้รับการตอบสนอง (ไม่มีข้อผิดพลาด) – โดยไม่มีการรับประกันว่าจะมีความทนทานต่อการเขียนพาร์ติชันล่าสุด: ระบบยังคงทำงานต่อไปแม้ว่าเครือข่ายระหว่างโหนดจะมีข้อความตกหล่น (หรือล่าช้า) จำนวนเท่าใดก็ตาม กล่าวอีกนัยหนึ่ง ทฤษฎีบท CAP ระบุว่าที่เก็บข้อมูลแบบกระจายสามารถให้การรับประกันสองในสามอย่างต่อไปนี้เท่านั้น: ความสอดคล้อง ความพร้อมใช้งาน หรือความทนทานต่อพาร์ติชัน
ตามทฤษฎีบทของ CAP ผู้ออกแบบระบบตระหนักถึงการแลกเปลี่ยนในการออกแบบระบบข้อมูลที่ใช้ร่วมกันบนเครือข่าย หนังสือเล่มนี้กล่าวถึงพื้นฐานของฐานข้อมูล NoSQL ในแง่ของข้อกำหนด ตามทฤษฎีบทของ CAP เราจำกัดการรับประกันเพียงสองในสามของสามสำหรับฐานข้อมูล: ความสอดคล้อง ความพร้อมใช้งาน และความทนทานต่อพาร์ติชัน พาร์ติชันเป็นตัวแบ่งการสื่อสารในระบบแบบกระจายระหว่างโหนด หากโหนดไม่สามารถรับข้อความใดๆ จากโหนดอื่นภายในระบบได้ โหนดนั้นจะถูกแบ่งระหว่างสองโหนด เมื่อพาร์ติชันได้รับการฟื้นฟู ระบบแบบกระจายที่รับประกันความทนทานของพาร์ติชันสามารถกลับสู่สถานะก่อนหน้าได้อย่างสง่างาม ผู้ออกแบบต้องคำนึงถึงทฤษฎีบท CAP ในขณะออกแบบหรือเลือกฐานข้อมูลแบบกระจาย
ทฤษฎีบท CAP กำหนดสองระบบใน MongoDB เป็น CP และ AP ทฤษฎีบท CAP นำเสนอมุมมองที่เรียบง่ายของระบบกระจายในปัจจุบัน เช่น MongoDB และ Cassandra การดำเนินงานตามปกติช่วยให้ มีความพร้อมใช้งานที่ยืดหยุ่นและความ สม่ำเสมอ ตลอดจนความสามารถในการปฏิบัติตามข้อกำหนดเฉพาะ
ทฤษฎีบท CAP (CP) เป็นทฤษฎีบททางคณิตศาสตร์ที่สามารถศึกษาแอปพลิเคชันได้โดยใช้ MongoDB และแอปพลิเคชันอื่นที่คล้ายคลึงกัน มักใช้ในแอปพลิเคชันแบบเรียลไทม์เพื่อเรียกใช้ในหลายตำแหน่งและเพื่อจัดการกับข้อมูลจำนวนมาก ทฤษฎีบท CAP ระบุว่า MongoDB เป็นที่เก็บข้อมูล CP ที่จัดการพาร์ติชันเครือข่ายโดยรักษาความสอดคล้องในขณะเดียวกันก็ประนีประนอมความพร้อมใช้งาน
ทฤษฎีบท Cap ใน Nosql คืออะไร?
เมื่อพูดถึง NoSQL จะไม่สามารถบรรลุความสอดคล้องและ ความพร้อมใช้งานสูง ร่วมกันได้ บรูเออร์ระบุสิ่งนี้ไว้ในทฤษฎีบท CAP ในตอนแรก ทฤษฎีบท CAP หรือทฤษฎีบท Eric Brewers ระบุว่าฐานข้อมูลสามารถรับประกันได้สองในสามประการเท่านั้น: ความสม่ำเสมอ ความพร้อมใช้งาน และความสม่ำเสมอ
ทฤษฎีบท CAP ประกอบด้วยองค์ประกอบสามส่วนเมื่อพูดถึง ที่เก็บข้อมูล แบบกระจาย การทำงานปกติส่งผลให้ที่เก็บข้อมูลของคุณดำเนินการทั้งสามฟังก์ชัน อย่างไรก็ตาม ตามทฤษฎีบท CAP เมื่อฐานข้อมูลแบบกระจายพบปัญหาเครือข่าย คุณสามารถระบุความสอดคล้องหรือความพร้อมใช้งาน ผลที่ได้คือถุงผสม ความจริงที่ว่าประเภทฐานข้อมูล เช่น NoSQL หรือแบบไม่เชิง สามารถรองรับความพร้อมใช้งานสูงหรือความสอดคล้องสูงเป็นปัจจัยสำคัญที่ต้องพิจารณาเมื่อเลือก เมื่อต้องส่งคืนข้อมูลอย่างแม่นยำ จำเป็นอย่างยิ่งที่จะต้องใช้ฐานข้อมูลที่สอดคล้องกัน แอพธนาคารควรคืนค่าที่แน่นอนของข้อมูลผู้ใช้โดยเร็วที่สุด
สามารถใช้ฐานข้อมูลความพร้อมใช้งานหากบริการมีความสำคัญมากกว่าข้อมูล บริษัทอีคอมเมิร์ซสามารถแสดงให้เห็นว่าฐานข้อมูลมีความพร้อมใช้งานสูงเพียงใดโดยใช้งาน ผู้ใช้สามารถเปลี่ยนลูกบิดในฐานข้อมูล เช่น Cosmos หรือ Cassandra เพื่อระบุว่าต้องการความเสถียรหรือความพร้อมใช้งาน
กล่าวอีกนัยหนึ่ง แม้ว่าพาร์ติชันจะเกิดขึ้น ข้อมูลทั้งหมดที่เก็บไว้ในความรู้สึก CAP จะถูกรักษาไว้ ใน CAP ไม่มีความสอดคล้องกันในระบบสำรองข้อมูลที่มีไว้สำหรับพาร์ติชันเดียวเท่านั้น
หมายความว่า แม้ว่าบางโหนดจะไม่พร้อมใช้งาน ระบบสามารถรักษาบริการให้กับลูกค้าได้ ไม่สอดคล้องกับ CAP ในการใช้งานระบบที่อนุญาตให้มีความทนทานต่อพาร์ติชัน แต่ไม่รักษาข้อมูล
ในระบบแบบกระจายที่มีการจำลองข้อมูล ไม่มีการรับประกันว่าคุณสมบัติที่ต้องการทั้งสามอย่าง – ความสม่ำเสมอ ความพร้อมใช้งาน และความทนทานของพาร์ติชัน – จะได้รับการบำรุงรักษาพร้อมกัน แม้ว่าโหนดที่แบ่งพาร์ติชันจะไม่พร้อมใช้งานเสมอไป แต่โหนดใน CAP ยังสามารถอ่านและเขียนได้ ระบบที่ทำให้โหนดบางส่วนแต่ไม่ใช่ทั้งหมดสามารถอ่านและเขียนได้นั้นไม่สามารถใช้งานได้ในแง่ของ CAP โดยไม่คำนึงว่าระบบจะยังคงพร้อมใช้งานสำหรับลูกค้าและเป็นไปตาม SLA หรือไม่
ความรู้สึก CAP บอกเป็นนัยว่าแม้ว่าจะมีพาร์ติชันเกิดขึ้น ข้อมูลทั้งหมดจะถูกเก็บไว้ในโฮสต์
ทฤษฎีบท Cap: เป็นปัญหาหรือไม่?
ขึ้นอยู่กับว่าคุณมองอย่างไร อาจเป็นการตัดสินใจที่ยากลำบาก ทฤษฎีบท CAP สามารถลบออกจากเว็บแอปพลิเคชันได้ ซึ่งความพร้อมใช้งานและความสามารถในการปรับขนาดมีความสำคัญมากกว่าความสอดคล้องเมื่อมีการแจกจ่าย ระบบฐานข้อมูล พื้นฐาน
Nosql ตาม Cap Theorem หรือไม่
ไม่มีคำตอบที่ชัดเจนสำหรับคำถามนี้ เนื่องจากขึ้นอยู่กับว่าคุณตีความทฤษฎีบท CAP อย่างไร บางคนแย้งว่าฐานข้อมูล nosql ไม่เป็นไปตามทฤษฎีบท CAP เพราะไม่รับประกันความสอดคล้อง ในขณะที่บางคนแย้งว่าฐานข้อมูล nosql ทำตามทฤษฎีบท CAP เพราะไม่รับประกันความพร้อมใช้งาน
ตัวอย่างทฤษฎีบท Cap คืออะไร?

ทฤษฎีบท CAP เป็นทฤษฎีในวิทยาการคอมพิวเตอร์ที่ระบุว่าเป็นไปไม่ได้ที่ระบบคอมพิวเตอร์แบบกระจายจะให้การรับประกันมากกว่าสองในสามประการต่อไปนี้พร้อมกัน:
1. ความสอดคล้อง: การอ่านทุกครั้งจะได้รับการเขียนหรือข้อผิดพลาดล่าสุด
2. ความพร้อมใช้งาน: ทุกคำขอได้รับการตอบกลับ (ไม่มีข้อผิดพลาด) - โดยไม่มีการรับประกันว่าจะมีการเขียนล่าสุด
3. ความทนทานต่อพาร์ติชัน: ระบบยังคงทำงานต่อไปแม้ว่าเครือข่ายระหว่างโหนดจะมีข้อความตกหล่น (หรือล่าช้า) จำนวนตามอำเภอใจ
กล่าวอีกนัยหนึ่ง ทฤษฎีบท CAP ระบุว่าเป็นไปไม่ได้ที่ระบบแบบกระจายจะมีทั้งความสอดคล้องและพร้อมใช้งานในกรณีของพาร์ติชันเครือข่าย
เมื่อออกแบบแอปพลิเคชันระบบคลาวด์ แอประบบคลาวด์ทั้งหมดเป็นระบบกระจาย ดังนั้นการเรียนรู้ทฤษฎีบท CAP จึงมีความสำคัญ ความสอดคล้องของ CAP หมายความว่าไคลเอนต์ทั้งหมด โดยไม่คำนึงถึงโหนดที่เชื่อมต่อ ได้รับข้อมูลเดียวกัน ความอดทนของพาร์ติชันในคลัสเตอร์หมายความว่า แม้ว่าการสื่อสารของโหนดบางโหนดจะล้มเหลว คลัสเตอร์จะไม่ถูกรบกวน ฐานข้อมูล NoSQL ไม่ถือว่าเป็นฐานข้อมูล CA ภายใต้ทฤษฎีบท CAP ฐานข้อมูล CA มอบความสอดคล้องและความพร้อมใช้งาน แต่ไม่สามารถรับประกัน ความทนทานต่อข้อผิดพลาด หากมีโหนดสองโหนดภายในระบบมีแผนผังพาร์ติชันแยกกัน ฐานข้อมูล AP ได้แก่ CouchDB, Cassandra และ ScyllaDB ตามทฤษฎีบทของ CAP ฐานข้อมูลแบบกระจายของ CA นั้นเป็นไปได้ในทางทฤษฎี แต่ปัจจุบันยังไม่สามารถใช้งานได้
ฐานข้อมูล NoSQL ถือเป็นระบบ AP ที่มีความพร้อมใช้งานและความทนทานต่อพาร์ติชันที่ค่าใช้จ่ายของความสอดคล้องกัน ฐานข้อมูลแบบกระจาย เช่น PACELC เพิ่มเวลาแฝงและความสอดคล้องให้กับระบบแบบกระจาย นอกเหนือจากเวลาแฝงและความสม่ำเสมอ เมื่อคำนึงถึงประสิทธิภาพแล้ว เป็นไปได้ไหมที่จะทำตามสัญญานี้โดยไม่ประนีประนอมในด้านที่สำคัญอื่นๆ ScyllaDB เป็นระบบที่มีความพร้อมใช้งานสูง ทนทานต่อพาร์ติชัน มีความหน่วงแฝงต่ำ ซึ่งสามารถกำหนดค่าได้หลายวิธี ทฤษฎีบท CAP แบบดั้งเดิมไม่ได้ให้เวลาแฝงหรือประสิทธิภาพ ในฐานะที่เป็นแอปพลิเคชันบนคลาวด์ พวกเขาต้องการเวลาแฝงต่ำที่คาดการณ์ได้และความพร้อมใช้งานสูง CylonDB มีประสิทธิภาพดีกว่าฐานข้อมูล NewSQL แบบกระจายเช่น CockroachDB ในระยะกว้าง
ความไม่สอดคล้องกันของข้อมูลเป็นสาเหตุเดียวของปัญหาความพร้อมให้บริการที่ทฤษฎีบท CAP พยายามแก้ไข นอกจากนี้ ปัจจัยอื่นๆ เช่น ความล้มเหลวของฮาร์ดแวร์หรือข้อผิดพลาดของมนุษย์อาจทำให้ข้อมูลไม่พร้อมใช้งาน ทฤษฎีบท CAP ซึ่งเป็น ทฤษฎีบทการออกแบบฐานข้อมูล ที่รู้จักกันดี ระบุว่าที่เก็บข้อมูลใดๆ ไม่สามารถแบ่งพาร์ติชันได้ด้วยคุณสมบัติทั้งสามอย่างคือ ความเสถียร ความพร้อมใช้งาน และความทนทานต่อพาร์ติชัน เป็นไปได้ที่บริษัทจะได้รับทั้งความสม่ำเสมอและความพร้อมใช้งาน แต่ก็ไม่สามารถทำได้เสมอไป Dr. Mohammad Hashim และ Dr. Amnon Shashua เสนอทฤษฎีบทนี้ในบทความเรื่อง “บรรลุความสอดคล้อง ความพร้อมใช้งาน และความทนทานต่อการแบ่งพาร์ติชันใน Data Stores” ทฤษฎีบทกล่าวถึงความไม่สอดคล้องกันของข้อมูลว่าเป็นสาเหตุเดียวของปัญหาความพร้อมใช้งานโดยระบุถึงการแลกเปลี่ยนระหว่างคุณสมบัติทั้งสามนี้ เป็นที่ทราบกันดีว่าทฤษฎีบทนี้ไม่ได้กล่าวถึงสาเหตุของความไม่พร้อมหรือแนวทางแก้ไขทั้งหมด ด้วยเหตุนี้ จึงจำเป็นอย่างยิ่งที่จะต้องเข้าใจสาเหตุของความไม่พร้อมทั้งหมด และเพื่อระบุและพัฒนาวิธีแก้ไขปัญหาเหล่านั้น เป็นผลให้สามารถใช้คลังข้อมูลเพื่อช่วยในความพยายามนี้ คุณสามารถใช้คลังข้อมูลเพื่อทำความเข้าใจและแก้ไขความไม่สอดคล้องกันระหว่างข้อมูลของคุณกับข้อมูลได้ดีขึ้น
ทฤษฎีบทแคป
หากใบสมัครของคุณสอดคล้องต้องพร้อมใช้งาน หากแอปพลิเคชันของคุณต้องการความพร้อมใช้งานบ่อยครั้ง แอปพลิเคชันจะต้องเต็มใจยอมรับขีดจำกัดของพาร์ติชัน สุดท้าย หากแอปพลิเคชันของคุณต้องการความทนทานต่อพาร์ติชัน ความสม่ำเสมอจะต้องถูกเสียสละ
หากพาร์ติชันเครือข่ายส่งผลให้ข้อมูลที่จัดเก็บไว้ในเพียร์เดียวสูญหาย ทฤษฎีบท CAP ระบุว่าจำนวนข้อมูลสูงสุดที่สามารถจัดเก็บในเพียร์เดียวมีจำกัด
ตัวอย่าง Cap Theorem Nosql
โหนดหลักหนึ่งโหนดประมวลผลการดำเนินการเขียนของ MongoDB ในกรณีที่ไม่มีโหนดหลัก ระบบจะต้องแทนที่ และในขณะที่ดำเนินการดังกล่าว ระบบจะป้องกันไม่ให้ไคลเอ็นต์เขียนถึงโหนดหลักจนกว่าโหนดหลักจะพร้อมใช้งาน
ข้อดีข้อเสียของฐานข้อมูล Hybrid Nosql
ฐานข้อมูล SPO มีข้อได้เปรียบในการให้ความสอดคล้องมากกว่าความพร้อมใช้งาน ในทางกลับกัน ฐานข้อมูล NoSQL แบบไฮบริด จัดอยู่ในประเภทที่สองของฐานข้อมูล NoSQL ซึ่งไม่จัดอยู่ในประเภทใดประเภทหนึ่งเหล่านี้อย่างเป็นระเบียบ ฐานข้อมูล CP และ SPO ถูกรวมเข้าในฐานข้อมูลเหล่านี้ ซึ่งมีทั้งข้อมูล CP และ SPO สิ่งที่ดีที่สุดของทั้งสองโลกทำให้ฐานข้อมูล NoSQL แบบไฮบริดเป็นตัวเลือกที่ได้รับความนิยมมากขึ้นเรื่อยๆ ช่วยลดความเสี่ยงของความไม่สอดคล้องกันของข้อมูลและการสูญหายของข้อมูลเนื่องจากความสะดวกในการบำรุงรักษาและความพร้อมใช้งาน
ทฤษฎีบท Cap ใน Blockchain
ทฤษฎีบท CAP หรือที่เรียกว่าทฤษฎีบทของ Brewer กล่าวว่าเป็นไปไม่ได้ที่ระบบแบบกระจายจะให้การรับประกันมากกว่าสองในสามสิ่งต่อไปนี้พร้อมกัน:
– ความสอดคล้อง (โหนดทั้งหมดเห็นข้อมูลเดียวกันในเวลาเดียวกัน)
– ความพร้อมใช้งาน (ทุกคำขอได้รับการตอบกลับ)
– ความทนทานต่อพาร์ติชัน (ระบบยังคงทำงานต่อไปแม้ว่าบางโหนดจะล้มเหลว)
ในระบบบล็อกเชน โหนดจะถูกแจกจ่ายและข้อมูลจะถูกทำซ้ำในทุกโหนด ทฤษฎีบท CAP จึงใช้กับระบบบล็อกเชน
ตามทฤษฎีบท CAP การจัดเก็บข้อมูลแบบกระจาย (เช่นเครือข่าย blockchain) ไม่สามารถรับประกันได้มากกว่าสองอย่าง: ความสอดคล้องและความพร้อมใช้งาน แม้ว่าเครือข่ายจะไม่สามารถรับประกันได้ว่าเป็นปัจจุบันเนื่องจากพาร์ติชันเครือข่าย (โหนดที่ล้มเหลว) ทุกคำขอจะได้รับคำตอบ เมื่อคุณส่ง Bitcoin ไม่แน่ใจว่าธุรกรรมจะได้รับการยอมรับหรือไม่ บล็อกจะเกิดขึ้นภายในห้านาทีหลังจากป้อนธุรกรรม หากคุณรอนานเกินไป ธุรกรรมของคุณจะถูกโอนไปยังบล็อกอื่น และบล็อกที่ล้อมรอบก็จะเริ่มสะสม ไม่เคยมีการทำธุรกรรมใดที่คลี่คลายเกินกว่าห้าชั่วโมงหลังจากเสร็จสิ้น
อาจมีการหยุดทำงานของเครือข่าย แต่ไม่มีข้อบ่งชี้ว่าสิ่งนี้ทำให้เกิดความไม่สอดคล้องกันหรือความพร้อมใช้งาน ตามทฤษฎีบทของ CAP ซึ่งเป็นทฤษฎีทางคอมพิวเตอร์เชิงทฤษฎี สามารถทำได้ เนื่องจากช่วยให้สองฟังก์ชันที่สำคัญที่สุดของฐานข้อมูลแบบกระจายสามารถอยู่ร่วมกันได้ ความสม่ำเสมอและความพร้อมใช้งานจึงเป็นสองฟังก์ชันเท่านั้นที่สามารถอยู่ร่วมกันได้ ตามกรณีการใช้งานเฉพาะของระบบ เราสามารถแลกเปลี่ยนสองฟังก์ชันที่มีอยู่ได้
ตัวอย่างเช่น หากเราต้องการระบบเพื่อตอบสนองต่อเหตุไฟไหม้ เราสามารถเลือกความพร้อมใช้งานมากกว่าความสม่ำเสมอ ด้วยเหตุนี้เราจึงรู้ว่าระบบจะต้องพร้อมใช้งานในกรณีเกิดไฟไหม้ แม้ว่าข้อมูลบางอย่างจะยังขาดหายไปก็ตาม เราอยากมีระบบที่สอดคล้องกันมากกว่าที่มีอยู่ เรารู้เรื่องนี้เพราะเรารู้ว่าผู้ใช้ต้องการเข้าถึงข้อมูลเดียวกันโดยไม่คำนึงถึงความล้มเหลวของเครือข่าย
ทฤษฎีบท CAP ต้องการความเข้าใจอย่างถ่องแท้เกี่ยวกับระบบข้อมูลที่ใช้ร่วมกันที่เชื่อมต่อกับเครือข่ายเพื่อออกแบบ ในกรณีนี้ เราสามารถใช้มันเพื่อแลกเปลี่ยนระหว่างสามฟังก์ชันและปรับแต่งระบบให้ตรงกับความต้องการเฉพาะของผู้ใช้
ทฤษฎีบทหมวก: ทำไมมันยังคงเกี่ยวข้องในปัจจุบัน
ทฤษฎีบท CAP แม้จะมีความก้าวหน้าและอัลกอริทึมที่ผ่านการคิดทบทวนแล้ว แต่ก็ยังเป็นแนวคิดที่เกี่ยวข้องมานานหลายทศวรรษ ทฤษฎีบทอธิบายระบบแบบกระจายว่ามีคุณสมบัติสองในสามคุณสมบัติ ได้แก่ ความสอดคล้อง ความพร้อมใช้งาน และพาร์ติชัน และเป็นหลักการพื้นฐานในการออกแบบระบบ เมื่อมีพาร์ติชัน ทฤษฎีบท CAP จะแสดงการประนีประนอมระหว่างความพร้อมใช้งานและความสอดคล้อง ทฤษฎีบทเป็นเครื่องมือที่มีประโยชน์สำหรับการทำความเข้าใจการแลกเปลี่ยนระหว่างคุณสมบัติเหล่านี้และช่วยในการเพิ่มประสิทธิภาพของระบบ
ทฤษฎีบทแคปในข้อมูลขนาดใหญ่
ในข้อมูลขนาดใหญ่ ทฤษฎีบท CAP ระบุว่าเป็นไปไม่ได้ที่ระบบแบบกระจายจะให้การรับประกันมากกว่าสองในสามสิ่งต่อไปนี้พร้อมกัน:
1. ความสอดคล้อง: โหนดทั้งหมดในระบบเห็นข้อมูลเดียวกันในเวลาเดียวกัน
2. ความพร้อมใช้งาน: ทุกโหนดในระบบสามารถเข้าถึงได้และสอบถามข้อมูล
3. ความทนทานต่อพาร์ติชัน: ระบบสามารถทำงานต่อไปได้แม้ว่าบางโหนดจะไม่พร้อมใช้งาน
ทฤษฎีบท CAP มักถูกอ้างถึงว่าเป็นเหตุผลว่าทำไมระบบข้อมูลขนาดใหญ่จึงไม่สามารถสอดคล้องกันได้อย่างแท้จริง และต้องได้รับการออกแบบให้สอดคล้องกันในที่สุด
ทฤษฎีบทของบรูเออร์ หรือที่เรียกว่าทฤษฎีบทแคป เป็นแนวคิดทางคณิตศาสตร์ที่อธิบายความสอดคล้อง ความพร้อมใช้งาน และความคลาดเคลื่อนของพาร์ติชัน การแลกเปลี่ยนระหว่างกรอบงานและการแลกเปลี่ยนเริ่มต้นในสถานะที่มั่นคงซึ่งกรอบงานนั้นสอดคล้องกัน เพื่อให้แน่ใจว่าเฟรมเวิร์กพร้อมใช้งาน 100% ตลอดเวลา เฟรมเวิร์กจะต้องยังคงใช้งานได้ แนวคิดของฐานข้อมูลแบบกระจายเกี่ยวข้องกับการโต้ตอบของพีซีหรือโหนดหลายเครื่องเพื่อให้ไคลเอนต์มีหน่วยฐานข้อมูลปฏิบัติการที่ไม่เหมือนใคร ในกรณีของการกู้คืนข้อมูล ไคลเอ็นต์จะเชื่อมต่อกับโหนดที่ใกล้กับโหนดที่จำเป็นต้องดึงข้อมูลมามากที่สุด การใช้มาตราส่วนแนวนอนช่วยลดต้นทุนและความเร็วของการจำลองข้อมูล สามารถใช้ฐานข้อมูลฐานข้อมูล NoSQL (ไม่ใช่เชิงสัมพันธ์) สำหรับแอปพลิเคชันเครือข่ายแบบกระจาย

ในเครือข่ายที่ขยายตัวอย่างรวดเร็ว พวกมันสามารถกระจายในแนวนอนและเข้าถึงได้ง่ายโดยใช้ลำดับชั้นที่เรียบง่าย ฐานข้อมูล NoSQL สามารถอธิบายได้ว่าเป็นฐานข้อมูล AP หรือ CP ความทนทานต่อพาร์ติชันและความสามารถในการเข้าถึงเป็นคุณสมบัติ CAP สองประการที่อุตสาหกรรมนี้ให้คุณค่าอย่างสูง ด้วยการใช้เฟรมเวิร์กแบบกระจาย เราสามารถได้รับพลังการประมวลผลจำนวนมากและความสามารถในการเข้าถึงที่ไม่สามารถทำได้ในอดีต เมื่อมีการใช้เฟรมเวิร์กแบบกระจายในเซิร์ฟเวอร์ที่ทำงานเป็นระยะเวลานาน เฟรมเวิร์กดังกล่าวจะให้ประสิทธิภาพที่สูงขึ้น ความเฉื่อย และเวลาทำงานเกือบ 100% เป้าหมายของการปรับขนาดในแนวนอนคือการเรียนรู้เกี่ยวกับเฟรมเวิร์กแบบกระจายและความท้าทายที่นำเสนอ ตลอดจนการประนีประนอมที่เหมาะสมใน CAP
เหตุใดทฤษฎีบทแคปจึงสำคัญ
ใน ระบบฐานข้อมูล ทฤษฎีบท CAP ระบุว่าเป็นไปไม่ได้ที่ระบบแบบกระจายจะให้การรับประกันมากกว่าสองในสามประการต่อไปนี้พร้อมกัน: ความสอดคล้อง: การอ่านทุกครั้งได้รับการเขียนล่าสุดหรือข้อผิดพลาด ความพร้อมใช้งาน: ทุกคำขอจะได้รับ (ไม่ใช่ ข้อผิดพลาด) การตอบสนอง – โดยไม่มีการรับประกันว่าจะมีความทนทานต่อการเขียนพาร์ติชันล่าสุด: ระบบยังคงทำงานต่อไปแม้ว่าเครือข่ายระหว่างโหนดจะทิ้งข้อความจำนวนหนึ่งตามอำเภอใจ (หรือล่าช้า) ทฤษฎีบท CAP เดิมเสนอโดยนักวิทยาศาสตร์คอมพิวเตอร์ Eric Brewer ใน 2000 เป็นที่รู้จักกันว่าการแลกเปลี่ยน CAP ทฤษฎีบท CAP มีความสำคัญเนื่องจากช่วยให้นักพัฒนาและสถาปนิกเข้าใจข้อจำกัดของระบบแบบกระจาย เป็นไปไม่ได้ที่ระบบแบบกระจายจะให้การรับประกัน CAP ทั้งสามรายการพร้อมกัน นักพัฒนาและสถาปนิกต้องเลือกการรับประกันสองอย่างที่สำคัญต่อการใช้งานและออกแบบระบบให้สอดคล้องกัน
ตามทฤษฎีบทของ CAP ที่เก็บข้อมูลแบบกระจายไม่สามารถจัดเตรียมฟังก์ชันที่ต้องการต่อไปนี้พร้อมกันได้: ความสอดคล้อง ความพร้อมใช้งาน และค่าเผื่อการแบ่งพาร์ติชัน ไม่ว่าบางโหนดในระบบจะไม่พร้อมใช้งานหรือไม่ก็ตาม ไคลเอ็นต์ที่เชื่อมต่อกับฐานข้อมูลจะได้รับคำขอที่ถูกต้องจากระบบฐานข้อมูลเสมอ ในระบบฐานข้อมูลแบบกระจาย ข้อมูลมักถูกแบ่งระหว่างหลายโหนด การตัดหรือที่เรียกว่าการแบ่งพาร์ติชันในแนวนอนเกิดขึ้นในกระบวนการนี้ การรักษาขนาดแนวนอนในระบบฐานข้อมูล NoSQL เป็นสิ่งสำคัญ ฐานข้อมูล NoSQL มีแนวโน้มที่จะปรับเปลี่ยนได้อย่างมาก โดยมีไคลเอ็นต์จำนวนมากและข้อกำหนดระดับบริการที่เข้มงวด สถานะของแต่ละสำเนาในระบบสามารถรักษาได้โดย โหนดฐานข้อมูลส่วนกลาง
เมื่อโหนดร้องขอหรืออัปเดตข้อมูล มันจะแจ้งโหนดกลางก่อนที่จะส่งข้อมูลที่ร้องขอ โมเดลนี้เมื่อนำไปใช้กับ ระบบฐานข้อมูลที่มีความพร้อมใช้งานสูงและทนต่อการ แบ่งพาร์ติชัน สามารถช่วยเพิ่มความสอดคล้องโดยรวม หากการตอบกลับนั้นไม่มีข้อมูลเก่าหรือไม่มีข้อมูลเลย แสดงว่ายังคงละเมิดความสอดคล้องระดับอะตอม เมื่อโหนดสามารถเข้าถึงได้บนโมเดลซิงโครนัสบางส่วน เป็นไปได้ที่จะสร้างระบบที่สอดคล้องกันหรือดีเลย์ในที่สุด ในฐานะที่เป็นส่วนหนึ่งของระบบเช่นนี้ ในที่สุดข้อมูลจะถูกจำลองไปยังโหนดที่เพียงพอซึ่งเมื่อบิตข้อมูลทั้งหมดถูกส่งไปยังแต่ละโหนดแล้ว ระบบจะมีความสอดคล้องกัน
คำขอเขียนแต่ละรายการมีอยู่ในทุกโหนด A และ B สามารถแบ่งได้ด้วยสองโหนด A และ B โดยมีชุดของโหนด C อิสระที่สามารถจัดการความล้มเหลวของ A หรือ B ส่วนใหญ่ และแต่ละโหนดใน C สามารถทนต่อความล้มเหลวของ A หรือ B ได้เพียงหนึ่งเดียวเท่านั้น ทฤษฎีบทสามารถสรุปได้ โครงสร้างข้อมูลตามอำเภอใจและการรับประกันความสอดคล้องตามอำเภอใจ การรักษาชุดข้อมูลที่สอดคล้องกันในระบบแบบกระจายเป็นสิ่งสำคัญอย่างยิ่ง เพื่อให้แน่ใจว่าข้อมูลนั้นเป็นปัจจุบันอยู่เสมอ เนื่องจากระบบแบบกระจายเป็นชุดของโหนด จึงเป็นไปไม่ได้ที่จะรับประกันว่าโหนดทั้งหมดมีการเขียนข้อมูลล่าสุด คุณสมบัติที่สำคัญอีกประการหนึ่งของความพร้อมใช้งานของ ข้อมูล คือข้อมูลนั้นพร้อมสำหรับการอ่านเสมอ สิ่งสำคัญคือต้องทำให้ความทนทานของพาร์ติชันเป็นปัจจุบันอยู่เสมอ เพื่อให้แน่ใจว่าระบบสามารถจัดการกับความล้มเหลวจำนวนเท่าใดก็ได้ ตามทฤษฎีบทของ CAP ที่เก็บข้อมูลใด ๆ สามารถรับประกันได้สองสิ่งเท่านั้น: ข้อมูลจะคงที่เสมอหรือข้อผิดพลาดจะถูกสร้างขึ้นเมื่อข้อมูลมีการเปลี่ยนแปลง ในทำนองเดียวกัน คำสั่งความพร้อมใช้งานระบุว่าคำขอเขียนทั้งหมดพร้อมใช้งานที่โหนดทั้งหมด หากโหนดหนึ่งล้มเหลว โหนดอื่นจะเข้าถึงข้อมูลได้ นอกจากนี้ ความทนทานต่อพาร์ติชันยังระบุว่าแม้ว่าโหนดสองโหนดจะล้มเหลวในเวลาเดียวกัน ทั้งระบบจะยังคงสามารถทนต่อความล้มเหลวได้ในเวลาเดียวกัน ทฤษฎีบท CAP เป็นทฤษฎีบทวิทยาการคอมพิวเตอร์เชิงทฤษฎีที่ช่วยในการทำความเข้าใจว่าระบบกระจายทำงานอย่างไร ข้อมูลมีการกระจายบ่อยครั้ง ดังนั้นจึงจำเป็นอย่างยิ่งที่จะต้องนำสิ่งนี้ไปใช้ในแอปพลิเคชันเชิงปฏิบัติ เช่น เว็บแอปพลิเคชัน ทฤษฎีบท CAP นอกจากจะช่วยให้แน่ใจว่าข้อมูลได้รับการอัปเดตอย่างถูกต้องอยู่เสมอ และความล้มเหลวจะได้รับการจัดการด้วยความสง่างามแล้ว ยังสามารถช่วยในการกู้คืนข้อมูลได้อีกด้วย
ทฤษฎีบทแคปตร
ทฤษฎีบท CAP เป็นทฤษฎีทางวิทยาการคอมพิวเตอร์ที่ระบุว่าเป็นไปไม่ได้ที่ระบบแบบกระจายจะให้การรับประกันมากกว่าสองในสามประการต่อไปนี้พร้อมกัน:
ความสอดคล้อง: ผู้ใช้ทั้งหมดเห็นข้อมูลเดียวกันในเวลาเดียวกัน
ความพร้อมใช้งาน: ผู้ใช้ทุกคนสามารถอ่านและเขียนข้อมูลได้ตลอดเวลา
ความทนทานต่อพาร์ติชัน: ระบบสามารถทำงานต่อไปได้แม้ว่าบางโหนดเครือข่ายจะไม่พร้อมใช้งาน
ตามทฤษฎีบทของ CAP หากระบบไม่สามารถสอดคล้องกันและพร้อมใช้งานทั้งในสถานะของพาร์ติชันและตามค่าดีฟอลต์ จะไม่มีสิ่งที่เรียกว่าระบบแบบกระจาย CockroachDB เลือกความสอดคล้องในคำจำกัดความของระบบ CP ในทฤษฎีบท CAP เนื่องจากเครือข่ายมีพาร์ติชั่นที่หลากหลาย ระบบ CAP- ที่สอดคล้องกันบางระบบอาจไม่สามารถใช้งานได้ในบางครั้ง แต่ก็ยังสามารถพบได้ทุกที่ ทฤษฎีบท CAP อธิบายการแลกเปลี่ยนที่แคบระหว่างความสม่ำเสมอและความพร้อมใช้งาน ทฤษฎีบท CAP ไม่ได้พิจารณาถึงปัจจัยต่างๆ เช่น ผลกระทบของการเปลี่ยนแปลงสภาพภูมิอากาศ ซึ่งอาจกล่าวได้ว่าไฟฟ้าดับ เมื่อเปรียบเทียบกับ CAP- ที่มีอยู่ การซื้อ CAP ซื้อน้อยมากในแง่ของประสิทธิภาพ ดังนั้นเนื่องจากความสอดคล้องสูญเสียไป จึงจำเป็นต้องใช้รหัสจำนวนมาก
หากคุณเลือกใช้ CockroachDB คุณสามารถใช้ประโยชน์จากความพร้อมใช้งานที่สูงขึ้นและโหมดความน่าเชื่อถือที่ต่ำกว่า ทั้งนี้ขึ้นอยู่กับความต้องการของคุณ หากคุณมีเพียงการอ่านที่ล้าสมัยน้อยที่สุดจากเรพลิกาที่ใกล้เคียงที่สุดโดยไม่บล็อกธุรกรรมที่ขัดแย้งกัน คุณควรพิจารณาเพิ่มความพร้อมใช้งานของเรพลิกาของคุณ แม้ว่าความจริงแล้วเวลาแฝงอาจนานกว่า แต่แอปพลิเคชันส่วนใหญ่ที่ต้องการฐานข้อมูลที่สอดคล้องกับ CAP เช่น CockroachDB มักจะดีกว่าหากใช้ฐานข้อมูลที่สอดคล้องกับ CAP
การพิสูจน์ทฤษฎีบทแคป
ไม่มีข้อพิสูจน์ที่ชัดเจนเกี่ยวกับทฤษฎีบทแคป อย่างไรก็ตาม มีข้อมูลเชิงลึกที่สำคัญบางประการที่ช่วยอธิบายว่าทำไมทฤษฎีบทนี้ถึงเป็นจริง
อันดับแรก สิ่งสำคัญคือต้องเข้าใจว่า Cap Theorem เป็นเรื่องเกี่ยวกับการแลกเปลี่ยน ในระบบแบบกระจายใด ๆ จะต้องมีการแลกเปลี่ยนเสมอระหว่างความสอดคล้อง ความพร้อมใช้งาน และความทนทานต่อพาร์ติชัน
ประการที่สอง ทฤษฎีบทเป็นคำสั่งเกี่ยวกับสิ่งที่เป็นไปได้ในระบบแบบกระจาย ไม่ใช่คำแถลงเกี่ยวกับสิ่งที่พึงปรารถนาหรือเหมาะสมที่สุด
ประการที่สาม การพิสูจน์ทฤษฎีบทแคปขึ้นอยู่กับแนวคิดพื้นฐานบางอย่างจากวิทยาการคอมพิวเตอร์ รวมถึงแนวคิดของระบบกระจายและแนวคิดของอัลกอริทึมที่สอดคล้องกัน
ในระบบกระจาย ทฤษฎีบท CAP เป็นทฤษฎีบทพื้นฐาน ในความเป็นจริง ระบบแบบกระจายใดๆ สามารถมีลักษณะสองอย่างหรือมากกว่าจากสามลักษณะต่อไปนี้ เราจะตรวจสอบระบบกระจายพื้นฐานและแสดงวิธีทำให้ระบบทำงานโดยอธิบายว่าอะไรทำให้ระบบนี้เหมาะสมสำหรับความสอดคล้อง พร้อมใช้งาน และความทนทานของพาร์ติชัน ในระบบที่มีอยู่ เมื่อลูกค้าของเราส่งคำขอไปยังเซิร์ฟเวอร์ที่ไม่ขัดข้อง เซิร์ฟเวอร์จะตอบกลับไปยังไคลเอนต์โดยเร็วที่สุด หากเราต้องทนต่อการแบ่งพาร์ติชัน เราต้องสามารถทำงานได้อย่างถูกต้องกับพาร์ติชันเครือข่ายตามอำเภอใจ จากการศึกษาของเรา ระบบไม่สามารถมีทั้งสามอย่างพร้อมกันได้
ทฤษฎีบทแคป
ตามทฤษฎีวิทยาการคอมพิวเตอร์ เป็นไปไม่ได้ที่จะใช้ที่เก็บข้อมูลแบบกระจายเพื่อจัดเตรียมฟังก์ชันที่ต้องการสามอย่างต่อไปนี้พร้อมกัน: ความสอดคล้อง ความพร้อมใช้งาน และค่าเผื่อของพาร์ติชัน ความสอดคล้อง ความพร้อมใช้งาน และความทนทานต่อพาร์ติชันรวมอยู่ใน CAP
เนื่องจากทฤษฎีบท CAP ระบุว่าไม่มีระบบใดสามารถจัดเตรียมคุณสมบัติทั้งสามพร้อมกันได้ นี่เป็นเรื่องจริง หากเราต้องการให้ความสอดคล้อง ความพร้อมใช้งาน และความทนทานต่อพาร์ติชัน เราต้องประนีประนอมกับหนึ่งในสามข้อกำหนดนี้
ฐานข้อมูล Nosql
ฐานข้อมูล Nosql เป็นระบบฐานข้อมูลที่ไม่ได้ใช้แบบจำลองเชิงสัมพันธ์แบบดั้งเดิม แต่จะใช้โมเดลต่างๆ ที่หลากหลายซึ่งเหมาะกับความต้องการในการ จัดเก็บและดึงข้อมูลสมัยใหม่ มากกว่า ฐานข้อมูล Nosql มักจะปรับขนาดได้และใช้งานง่ายกว่าฐานข้อมูลเชิงสัมพันธ์ ทำให้เป็นตัวเลือกยอดนิยมสำหรับเว็บแอปพลิเคชันจำนวนมาก
ฐานข้อมูลเอกสารเก็บข้อมูลในเอกสารมากกว่าฐานข้อมูลเชิงสัมพันธ์ เพื่อตอบสนองความต้องการของธุรกิจยุคใหม่ จึงถูกสร้างขึ้นให้ปรับเปลี่ยนได้ ปรับขนาดได้ และสามารถตอบสนองความต้องการด้านการจัดการข้อมูลได้อย่างรวดเร็ว ฐานข้อมูล Document NoSQL แบ่งออกเป็น 4 ประเภท ได้แก่ ฐานข้อมูลเอกสารล้วน ที่เก็บคีย์-ค่า ฐานข้อมูลคอลัมน์กว้าง และฐานข้อมูลกราฟ องค์กร Global 2000 กำลังนำฐานข้อมูล NoSQL มาใช้มากขึ้นเพื่อขับเคลื่อนแอปพลิเคชันที่มีความสำคัญต่อภารกิจ นี่เป็นเพราะแนวโน้ม 5 ประการที่จัดการได้ยากจนฐานข้อมูลเชิงสัมพันธ์ไม่สามารถจัดการได้อีกต่อไป เนื่องจากโมเดลข้อมูลตายตัว ฐานข้อมูลเชิงสัมพันธ์จึงเป็นอุปสรรคสำคัญสำหรับการพัฒนาที่คล่องตัว กำหนดให้เป็นรูปแบบแอปพลิเคชันของ NoSQL
ข้อมูลสามารถถูกสร้างแบบจำลองในแบบ nodality ในแบบที่ต้องการโดยไม่คงที่ ในบริบทของฐานข้อมูลเชิงเอกสาร JSON เป็นรูปแบบพฤตินัยสำหรับการจัดเก็บข้อมูล เป็นผลให้เฟรมเวิร์ก ORM ไม่ดำเนินการตามข้อกำหนดด้านโอเวอร์เฮดของการพัฒนาแอปพลิเคชันอีกต่อไป N1QL (ออกเสียงว่า “นิเกิล”) เป็นภาษาเคียวรีที่มีประสิทธิภาพซึ่งรวมอยู่ใน Couchbase Server 4.0 ซึ่งช่วยให้ SQL สามารถแปลงเป็น JSON ได้ ไม่เพียงแต่รองรับคำสั่ง SELECT / FROM / WHERE มาตรฐานเท่านั้น แต่ยังรองรับการรวม (GROUP BY) การเรียงลำดับ (SORT BY) การรวม (LEFT OUTER / INNER) และฟังก์ชันอื่นๆ ฐานข้อมูล NoSQL นั้นใช้งานง่ายเพราะได้รับการออกแบบด้วยสถาปัตยกรรมแบบขยายขนาดและไม่มีจุดล้มเหลวแม้แต่จุดเดียว มีความสำคัญมากขึ้นเรื่อย ๆ สำหรับธุรกิจที่จะสามารถตอบสนองความต้องการของลูกค้าทางออนไลน์ เนื่องจากงานจำนวนมากขึ้นเรื่อย ๆ ดำเนินการบนอุปกรณ์พกพาและหน้าเว็บ
ฐานข้อมูล NoSQL ติดตั้ง กำหนดค่า และปรับขนาดได้ง่าย ทำให้เป็นเครื่องมือที่เหมาะสำหรับการจัดการข้อมูล มีวัตถุประสงค์เพื่อทำหน้าที่เป็นระบบการอ่าน การเขียน และการจัดเก็บ นอกจากนี้ ยังสามารถจัดการและตรวจสอบคลัสเตอร์ที่มีขนาดแตกต่างกันและในขั้นตอนการดำเนินงานต่างๆ ได้ ไม่จำเป็นต้องติดตั้งซอฟต์แวร์แยกต่างหากสำหรับการทำซ้ำระหว่างฐานข้อมูล เนื่องจากฐานข้อมูล NoSQL เป็นแบบกระจาย นอกจากนี้ ยังช่วยให้แอปพลิเคชันดำเนินการหยุดทำงานของตนเองได้ตามต้องการโดยใช้เราเตอร์ฮาร์ดแวร์ แอปพลิเคชันไม่จำเป็นต้องรอให้ฐานข้อมูลค้นพบปัญหาและดำเนินการหยุดทำงานของตนเอง ฐานข้อมูล NoSQL กลายเป็นเรื่องธรรมดามากขึ้นเรื่อยๆ ในการขับเคลื่อนแอปพลิเคชันเว็บ อุปกรณ์พกพา และอินเทอร์เน็ตในทุกสิ่ง (IoT) ที่ทันสมัย
ฐานข้อมูล Nosql ประเภทต่างๆ
ความนิยมที่เพิ่มขึ้นของฐานข้อมูล NoSQL เกิดจากความสามารถของฐานข้อมูล NoSQL ในการจัดเก็บข้อมูลในลักษณะที่แตกต่างกัน ทำให้สามารถเข้าถึงวิธีการที่รวดเร็วและมีประสิทธิภาพมากขึ้น แอปพลิเคชันต่างๆ รวมถึงเว็บแอปพลิเคชัน ข้อมูลขนาดใหญ่ และ Internet of Things (IoT) สามารถเรียกใช้บนแพลตฟอร์มเหล่านี้ได้ ฐานข้อมูล NoSQL แบบเอกสาร เช่น Cassandra เหมาะอย่างยิ่งสำหรับข้อมูลจำนวนมากที่ไม่สามารถเข้าถึงได้โดยง่าย การกลายพันธุ์ข้อมูลโดยใช้ข้อมูลเหล่านี้ทำได้ง่าย ซึ่งจะเป็นประโยชน์สำหรับการอัปเดตข้อมูลแบบเรียลไทม์
Redis เป็นฐานข้อมูลคีย์-ค่าที่สามารถใช้เพื่อจัดเก็บข้อมูลจำนวนเล็กน้อยที่ต้องการการเข้าถึงอย่างรวดเร็ว สามารถเรียกใช้ข้อมูลได้อย่างรวดเร็วโดยเพียงแค่ดูที่คีย์
ด้วยการใช้ฐานข้อมูลแบบ Wide-Column เช่น Neo4j คุณสามารถสร้างดัชนีและค้นหาข้อมูลจำนวนมากได้อย่างง่ายดาย เนื่องจากคุณสมบัติเหล่านี้ คอลัมน์จึงสามารถเพิ่มลงในฐานข้อมูลได้อย่างรวดเร็ว
ฐานข้อมูลกราฟเช่น Neo4j เหมาะอย่างยิ่งสำหรับการจัดระเบียบข้อมูลที่เข้าถึงได้ยากในลักษณะแบนๆ ด้วยความช่วยเหลือของ API นี้ คุณสามารถสืบค้นข้อมูลในลักษณะที่ง่ายและมีประสิทธิภาพ
กรด Db เชิงสัมพันธ์
ฐานข้อมูลเชิงสัมพันธ์คือฐานข้อมูลดิจิทัลที่อิงตามแบบจำลองเชิงสัมพันธ์ของข้อมูล ตามที่เสนอโดย Edgar F. Codd ในปี 1970 ระบบซอฟต์แวร์ที่ใช้ในการรักษาฐานข้อมูลเชิงสัมพันธ์คือระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) ระบบฐานข้อมูลเชิงสัมพันธ์จำนวนมากมีตัวเลือกในการใช้โมเดลธุรกรรมกรด (ความเป็นอะตอม ความสม่ำเสมอ การแยกตัว ความทนทาน)
นี่คือชุดของคุณลักษณะที่รับประกันว่าธุรกรรมของฐานข้อมูลได้รับการประมวลผลอย่างน่าเชื่อถือโดยการสร้างกรด (ความเป็นอะตอม ความสอดคล้อง การแยกตัว ความทนทาน) ฟังก์ชัน ACID ของฐานข้อมูลคือการกู้คืนจากข้อผิดพลาดที่อาจเกิดขึ้นในขณะที่กำลังประมวลผลธุรกรรม แม้จะมีข้อผิดพลาดใด ๆ ข้อมูลของฐานข้อมูลก็ยังคงถูกต้องและสม่ำเสมอ ข้อมูลจะไม่ถูกเปลี่ยนแปลงหากธุรกรรมล้มเหลวก่อนที่จะเสร็จสมบูรณ์ การทำธุรกรรมอาจล้มเหลวอันเป็นผลมาจากการป้อนข้อมูลที่ไม่ดี หรือในบางกรณี อาจมีการละเมิดความสอดคล้องกัน อาจเป็นไปได้ว่าเกิดจากการหมดเวลาหรือการล็อกตายในระบบจัดการฐานข้อมูล ความล้มเหลวของสื่อหมายถึงความล้มเหลวของอุปกรณ์จัดเก็บข้อมูล (เช่น ฮาร์ดดิสก์) ในการอ่านและเขียนข้อมูล
เป็นไปตามกรด Rdbms หรือไม่
ข้อมูลธุรกรรมต้องเป็นไปตามมาตรฐาน ACID ซึ่งรองรับโดย RDBMS ยอดนิยมมากมาย เช่น Oracle, SQL Server, PostgreSQL และ MySQL
ซึ่ง Db ตามคุณสมบัติของกรด?
MySQL, PostgreSQL, Oracle และ Microsoft SQL ล้วนรับประกันคุณสมบัติของกรดสำหรับการทำธุรกรรม
Rdbms มีคุณสมบัติเป็นกรดหรือไม่?
ตรงกันข้ามกับข้อมูลแบบกระจาย RDBM มีคุณสมบัติเป็นกรดซึ่งยากต่อการบำรุงรักษา RDBM ยังรับประกันความสอดคล้องและความพร้อมใช้งานเหนือความสามารถในการปรับขนาดตามทฤษฎีบท CAP (Gilbert and Lynch, 2002) ซึ่งระบุว่า ACID จำเป็นสำหรับแต่ละธุรกรรมที่จัดการ เช่น ธุรกรรมที่เกิดขึ้นพร้อมกัน