Skip to main content
Loading

CAP and ACID

Overview

This page describes how Aerospike optimizes transaction throughput, latency, and uptime while achieving a high level of reliability.

CAP Theorem

The CAP Theorem states that any networked shared-data system can have at most two of three desirable properties. These properties are consistency, availability, and partition-tolerance. Since partitions are inevitable, and availability is paramount for a class of deployments, Aerospike prioritizes availability over consistency. The Aerospike system can therefore be classified as AP and works as follows to provide very high performance and availability:

  • Prioritizes availability over consistency in each subsystem.
  • Leverages the Aerospike high vertical scale, 1 million TPS and multiple terabyte capacity per node.
  • Ensures small cluster sizes of 1 to 100 nodes.
  • Ensures low latency transactions at high throughput and keeping the data available during node failure and rolling upgrades.
  • Provides some simple conflict resolution support to ensure that, during cluster change events, newer changes to data can "win" over older changes.

Aerospike supports strong consistency. With this algorithm, cluster splits and partitions carefully manage which section of the cluster is still available, disallowing any potentially conflicting writes.

Aerospike maintains consistency on a primary key basis. It provides durability by committing the writes to multiple physical servers with independent hardware components. For even greater durability, a write may be required to flush to persistent storage.

ACID

ACID typically implies two features beyond CAP:

  • Multi-record isolation and consistency
  • Query isolation, so a multi-record query will be consistent in the face of writes

Aerospike does not provide these two features.

For more information, see these details on strong consistency.