Aerospike

Aerospike is a distributed, scalable NoSQL database. It is architected with three key objectives:

  • To create a flexible, scalable platform that would meet the needs of today's web-scale applications
  • To provide the robustness and reliability (ie, ACID) expected from traditional databases.
  • To provide operational efficiency (minimal manual involvement)

First published in the  Proceedings of VLDB (Very Large Databases) in 2011, the Aerospike architecture consists of 3 layers:

  1. The cluster-aware Client Layer includes open source client libraries that implement Aerospike APIs, track nodes and know where data reside in the cluster.
  2. The self-managing Clustering and  Data Distribution Layer oversees cluster communications and automates fail-over, replication, cross data center synchronization and intelligent re-balancing and data migration.
  3. The flash-optimized Data Storage Layer reliably stores data in DRAM and Flash.