數(shù)據(jù)庫管理系統(tǒng)在寫入/更新資料過程中為保證事務(wù)是正確可靠的,其必須具備 ACID 特性。
ACID
- A: atomicity(原子性) - 一個(gè)事務(wù)(transaction)中的所有操作,要么全部完成,要么全部不完成,不會結(jié)束在中間某個(gè)環(huán)節(jié)。事務(wù)在執(zhí)行過程中發(fā)生錯(cuò)誤,會被回滾(Rollback)到事務(wù)開始前的狀態(tài),就像這個(gè)事務(wù)從來沒有執(zhí)行過一樣。
- C: consistency(一致性) - 在事務(wù)開始之前和事務(wù)結(jié)束以后,數(shù)據(jù)庫的完整性沒有被破壞。即從一個(gè)一致性狀態(tài)轉(zhuǎn)換到另一個(gè)一致性狀態(tài)。
- I: isolation(隔離性) - 當(dāng)兩個(gè)或者多個(gè)事務(wù)并發(fā)訪問(此處訪問指查詢和修改的操作)數(shù)據(jù)庫的同一數(shù)據(jù)時(shí)所表現(xiàn)出的相互關(guān)系。通常來說,一個(gè)事務(wù)所做的修改在最終提交以前,對其他事務(wù)是不可見的。
- D: durability(持久性) - 在事務(wù)完成以后,該事務(wù)對數(shù)據(jù)庫所作的更改便持久地保存在數(shù)據(jù)庫之中,并且是完全的。
符合 ACID 的典型例子有銀行轉(zhuǎn)賬,整個(gè)過程稱為一個(gè)事務(wù),具有 ACID 特性。
Reference
更多建議: