ACID
ACID — атомарность, согласованность, изоляция, долговечность
Суть в одном предложении
ACID формализует гарантии транзакций в СУБД: атомарность, согласованность, изоляция и долговечность.
Краткое определение
ACID — набор свойств, описывающих гарантии корректности операций в реляционных СУБД при выполнении изменений данных.
Оригинал и перевод
- Язык: английский
- Оригинал: ACID
- Расшифровка: Atomicity, Consistency, Isolation, Durability
- Буквальный перевод: атомарность, согласованность, изоляция, долговечность
Синонимы и варианты написания
- ACID properties
Происхождение
Термин используется в теории и практике транзакционных СУБД для формализации гарантий при сбоях и параллельном доступе.
Где используется
- Реляционные СУБД (PostgreSQL, MySQL, и др.)
- Транзакционные приложения: платежи, склад, заказы
Когда это важно
При проектировании и эксплуатации систем, где некорректное состояние данных недопустимо (финансы, инвентарь, согласованность распределённых операций).
Подробное объяснение
- Atomicity: операция либо выполняется полностью, либо не выполняется вовсе.
- Consistency: после операции данные остаются в допустимом состоянии (инварианты соблюдены).
- Isolation: параллельные операции не «ломают» друг друга (зависит от уровня изоляции).
- Durability: после подтверждения изменения не теряются при сбое.
ACID важен для финансовых, складских и любых критичных систем, где ошибки состояния недопустимы.
Аналоги и связанные термины
- Isolation level
- MVCC
- WAL (Write-Ahead Logging)
- CAP theorem
Пример использования
«Для платежей и балансов нужны ACID-гарантии: подтверждённая запись не должна исчезать после перезапуска сервера.»
Мини‑FAQ
- ACID и NoSQL? Ответ: Многие NoSQL-системы ослабляют или отказываются от полного набора ACID в обмен на масштабируемость; для критичных данных по-прежнему важны транзакционные гарантии.
Смотри также
- Replication
- Sharding
- CAP theorem