Databases & Data Storage
ACID vs BASE
Definition
ACID (Atomicity, Consistency, Isolation, Durability) and BASE (Basically Available, Soft state, Eventually consistent) are two different models for database design. ACID prioritizes consistency, while BASE prioritizes availability.
Why It Matters
This represents a fundamental trade-off in distributed database design. You must choose which properties are more important for your application.
Contextual Example
A banking system needs ACID guarantees to ensure transactions are always correct. A social media feed, on the other hand, might use a BASE model; it's more important that the feed is always available, even if it means a "like" takes a few seconds to show up everywhere (eventual consistency).
Common Misunderstandings
- ACID is typical of traditional relational databases (e.g., PostgreSQL).
- BASE is typical of many NoSQL databases designed for high availability and scale (e.g., Cassandra).