Base model

What is the BASE model?

BASE is an acronym for describing a flexible way to manipulate data. With requirements for NoSQL databases, the BASE model came to be as a less pessimistic approach of the acid-model when handling data. The acronym stands for:

  • Basic Availability: The database is available and should work most of the time.
  • Soft-state: Data stores don't have to be completely write-consistent or require mutual consistency between replicas.
  • Eventual consistency: The database is lazily consistent, meaning it ensures data consistency at a later point.

BASE properties are significantly looser than ACID, but the tradeoff allows for scalability. Although BASE has loose consistency, it doesn't mean data will be completely inconsistent. However, it does require assistance from the developer when ensuring what the data should focus on being consistent in (e.g: consistent in time of activity or order of processing).

The BASE model loosely refers to distributed data stores, which means these databases require different approaches when handling transactions and events asynchronously. This will also mean a tradeoff of availability for consistency in the presence of a network partition or power outage; this is more deeply covered in cap-theorem.

Reference

sticker #1
Subscribe to Dwarves Memo

Receive the latest updates directly to your inbox.