ACID 是什麼?請解釋 ACID 特性?
ACID 是指在資料庫的管理系統中,在寫入或更新資料的過程中,為了保證事務(transaction)是正確可靠的,所以須具備四種特性:
- 原子性(Atomicity):事務是不可分割的完整個體,只有「全部執行」或者「全部不執行」兩個選項。
- 一致性(Consistency):這邊指的「一致」為資料庫的一致狀態,是指在事務開始的前後,資料庫的完整性沒有被破壞,表示寫入的資料必須完全符合所有預設的規範。
- 事務隔離(Isolation):某事務執行期間所用的資料或中間結果,不容許其他交易讀取或寫入,直到被 Commit 為止。
- 持久性(Durability):一旦交易 Commit 後,其對資料庫做的變更是永遠有效的,即使未來系統當機或損毀。