原子性(Atomicity): 事務(wù)要么全部完成,要么全部取消。 如果事務(wù)崩潰,狀態(tài)回到事務(wù)之前(事務(wù)回滾)。
隔離性(Isolation): 如果2個事務(wù) T1 和 T2 同時運(yùn)行,事務(wù) T1 和 T2 最終的結(jié)果是相同的,不管 T1和T2誰先結(jié)束。
持久性(Durability): 一旦事務(wù)提交,不管發(fā)生什么(崩潰或者出錯),數(shù)據(jù)要保存在數(shù)據(jù)庫中。
一致性(Consistency): 只有合法的數(shù)據(jù)(依照關(guān)系約束和函數(shù)約束)才能寫入數(shù)據(jù)庫。
原子性,確保不管交易過程中發(fā)生了什么意外狀況(服務(wù)器崩潰、網(wǎng)絡(luò)中斷等),不能出現(xiàn)A賬戶少了一個億,但B賬戶沒到帳,或者A賬戶沒變,但B賬戶卻憑空收到一個億(數(shù)據(jù)不一致)。A和B賬戶的金額變動要么同時成功,要么同時失敗(保持原狀)。
隔離性,如果A在轉(zhuǎn)賬1億給B(T1),同時C又在轉(zhuǎn)賬3億給A(T2),不管T1和T2誰先執(zhí)行完畢,最終結(jié)果必須是A賬戶增加2億,而不是3億,B增加1億,C減少3億。
持久性,確保如果 T1 剛剛提交,數(shù)據(jù)庫就發(fā)生崩潰,T1執(zhí)行的結(jié)果依然會保持在數(shù)據(jù)庫中。
一致性,確保錢不會在系統(tǒng)內(nèi)憑空產(chǎn)生或消失, 依賴原子性和隔離性。