ACID

Definition

Atomicity, Consistency, Isolation, Durability - properties that guarantee database transactions are processed reliably, ensuring data integrity.

Use Cases

Frequently Asked Questions

What’s the difference between ACID and BASE (eventual consistency)?
ACID focuses on correctness during transactions: changes are all-or-nothing, consistent, isolated from other concurrent work, and durable after commit. BASE systems prioritize availability and scalability and often accept eventual consistency, meaning different replicas may temporarily disagree and converge later. ACID is common in relational databases and financial workflows; BASE is common in large-scale distributed systems where low latency and high availability are prioritized.
When should I use ACID transactions?
Use ACID when you can’t tolerate partial updates or inconsistent reads, such as payments, account balances, order processing, inventory reservation, booking systems, and any workflow that must be correct under concurrency. If your workload can tolerate temporary inconsistency (for example, analytics counters, feeds, caching, or log ingestion), you may not need full ACID guarantees everywhere.
How much does ACID cost?
ACID itself has no direct price, but stronger transactional guarantees can increase cost through higher resource usage and architectural constraints. Costs are driven by the database/service you choose (managed relational DB vs distributed DB), required throughput and storage, high availability and replication (multi-AZ/region), backup/retention, and performance tuning (indexes, transaction contention). In practice, ACID workloads may require larger instances, faster storage, or more replicas to meet latency and concurrency goals.

Category: data

Difficulty: advanced

Related Terms

See Also