NEW
Set of transactional guarantees—Atomicity, Consistency, Isolation, Durability—ensuring reliable database operations under failures.
DESCRIPTION
ACID defines minimal guarantees for transactional systems to preserve data correctness. Atomicity ensures all-or-nothing execution, consistency preserves invariants, isolation prevents interference between transactions, and durability guarantees persistence after commit. Traditional relational databases implement ACID with logging, locking, and recovery protocols. In distributed systems, strict ACID can be costly, leading to trade-offs with availability and latency. Modern databases often offer tunable isolation and consistency levels to balance performance and correctness.
ALTERNATIVE DEFINITIONS
Wikipedia
In computer science, ACID is a set of properties of database transactions intended to guarantee data validity despite errors, power failures, and other mishaps.
Stresses validity under failures and errors.
IBM
ACID is an acronym for atomicity, consistency, isolation, and durability—four key attributes that ensure database transactions are processed reliably.
Summarizes the four properties and emphasizes reliability.
RELATED TERMS
Transaction Isolation Levels Consistency Model Two-Phase Commit Write-Ahead Logging Multiversion Concurrency Control Online Transaction Processing Durability
COMPETING TERMS
RELATIONS
KNOWLEDGE AREAS
Data Storage & Operations Data Engineering Data Architecture
TARGET AUDIENCE
Data Engineer Software Developer Data Architect Cloud Architect
EXTERNAL SOURCES
- Wikipedia - ACID
- Microsoft - SQL Server transactional concepts
- MySQL - MySQL glossary entry for ACID
TOP QUESTIONS
Why is ACID important for transactional systems?
ACID guarantees protect data integrity during concurrent operations and failures. Without them, applications risk corrupted state and inconsistent reads.
Category: Relevancy
How does isolation in ACID differ by level?
Isolation levels—read uncommitted to serializable—trade performance for reduced anomalies like dirty reads, non-repeatable reads, and phantom reads.
Category: Concept
Does ACID conflict with high availability?
Strong ACID can increase latency and coordination overhead, especially across nodes. Systems often expose tunable consistency to balance throughput and correctness.
Category: Trade-offs
How do databases implement durability in ACID?
Write-ahead logging, fsyncs, and replication ensure committed transactions survive crashes and power loss.
Category: Implementation
Is ACID only for relational databases?
No. Some NoSQL and NewSQL systems provide ACID semantics for transactions, sometimes at limited scope (e.g., per-partition or document).
Category: Scope
What anomalies does weak isolation allow under ACID?
Dirty reads, non-repeatable reads, and phantom reads can appear at lower isolation levels, managed by application tolerance or higher isolation.
Category: Risks
How does ACID compare to BASE?
BASE emphasizes availability and eventual consistency, relaxing strict ACID constraints. It suits distributed, high-scale applications with tolerance for temporary inconsistencies.
Category: Comparison
What is the cost of strict serializability under ACID?
It adds coordination and can severely limit throughput in distributed systems, but yields the simplest reasoning model.
Category: Performance
How to verify ACID compliance?
Use database docs, transactional tests, and consistency checkers; inject failures and concurrency to observe anomaly rates.
Category: Validation