Требования ACID — набор требований, которые обеспечивают сохранность ваших данных.

  1. Atomicity — Атомарность
  2. Consistency — Согласованность
  3. Isolation — Изолированность
  4. Durability — Надёжность

Атомарность гарантирует, что каждая транзакция будет выполнена полностью или не будет выполнена совсем. Не допускаются промежуточные состояния.

Согласованность вытекает из предыдущего. Благодаря тому, что транзакция не допускает промежуточных результатов, база остается согласованной. То есть все ячейки таблицы обновлены нужным нам образом

Изолированность

Во время выполнения транзакции параллельные транзакции не должны оказывать влияния на её результат. Это достигается блокированием данных с которыми работает транзакция или версионированием это когда внутри базы при каждом обновлении создается новая версия данных и сохраняется старая

Надёжность

Если пользователь получил подтверждение от системы, что транзакция выполнена, он может быть уверен, что сделанные им изменения не будут отменены из-за какого-либо сбоя. Обесточилась система, произошел сбой в оборудовании? На выполненную транзакцию это не повлияет.