ACID (Atomicity, Consistency, Isolation, Durability) - это набор свойств, которые описывают транзакционные системы и гарантируют, что транзакции выполняются надежно и безопасно.
- Atomicity (Атомарность) - гарантирует, что транзакция выполнится целиком или не выполнится вовсе. Если транзакция не может быть завершена полностью, то все изменения, произведенные до этого момента, отменяются (rollback).
- Consistency (Согласованность) - гарантирует, что после завершения транзакции база данных находится в согласованном состоянии. То есть, если данные были согласованными до начала транзакции, то они должны быть согласованными и после ее завершения.
- Isolation (Изолированность) - гарантирует, что каждая транзакция выполняется независимо от других транзакций. Другими словами, транзакции не должны влиять друг на друга, а любые результаты других транзакций не должны быть видны внутри данной транзакции до ее завершения.
- Durability (Долговечность) - гарантирует, что результаты выполненных транзакций сохраняются навсегда, даже в случае сбоя системы. Это достигается путем записи результатов транзакции на постоянные носители информации.
Несоблюдение хотя бы одного из свойств ACID может привести к ошибкам и потере целостности данных, поэтому они являются важными для любой транзакционной системы.
1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions
Tелеграмм канал: https://t.me/DEBAGanov
Мое резюме: https://github.com/DEBAGanov