應用資料庫 中階
ACID 特性是什麼?各自代表什麼意義?
ACID 特性
A — Atomicity(原子性)
交易中的所有操作要麼全部成功,要麼全部失敗回滾
- 例:轉帳操作——扣款和存款必須同時成功或同時回滾
C — Consistency(一致性)
交易完成後,資料庫必須從一個有效狀態轉換為另一個有效狀態
- 所有約束條件(唯一性、外鍵、Check)必須滿足
I — Isolation(隔離性)
並發交易互不干擾,每個交易如同獨立執行
- 不同隔離等級有不同的效能與一致性取捨
D — Durability(持久性)
交易一旦提交,資料永久保存(即使系統崩潰)
- 實現:WAL(Write-Ahead Logging)、定期 checkpoint
ACID vs BASE(NoSQL)
| 屬性 | ACID(傳統 RDBMS) | BASE(NoSQL) |
|---|---|---|
| 一致性 | 強一致性 | 最終一致性 |
| 可用性 | 可能降低 | 高可用 |
| 特性 | 保守、精確 | 樂觀、靈活 |
面試加分:解釋為何 NoSQL 選擇 BASE 而非 ACID——CAP 定理的取捨(在分散式系統中無法同時保證 CP 和 AP)。
✦ AI 模擬面試
輸入你的答案,AI 即時分析精準度與改進空間
登入後即可使用 AI 評分
