Foundationপ্রথম নীতি থেকে
LEVEL 8 · Database Systems

ACID

অ্যাসিড

Transaction-এর চার প্রতিশ্রুতি — Atomicity, Consistency, Isolation, Durability; ভাঙলে কোনটা যায় তা-ই database design-এর কেন্দ্রীয় প্রশ্ন।

also: acid-properties

  • Atomicity — all-or-nothing; undo log/WAL rollback
  • Consistency — constraint ভাঙা transaction বাঁচতে পারে না (C আসলে application+DB একসঙ্গের দায়)
  • Isolation — concurrent execution মনে হয় serial; degree থাকে — isolation level তাই
  • Durability — commit ack = বিদ্যুৎ গেলেও বাঁচবে; WAL fsync-এর প্রতিশ্রুতি
BEGIN;
UPDATE accounts SET bal = bal - 100 WHERE id = 1;
UPDATE accounts SET bal = bal + 100 WHERE id = 2;   -- crash here? no partial state
COMMIT;

NoSQL জগৎ-এ A, C, I আলগা করে trade — CAP/PACELC-র ভাষায় একই গল্পের অন্য অধ্যায়।