Skip to content
Visit booth 3171 at Google Cloud Next to see how to unlock real-time decisions at scaleMore info

Client architecture

This page describes Aerospike’s distributed client-server architecture and the capabilities of the Aerospike client API.

Client library capabilities

These Aerospike client API capabilities provide high performance and easy development:

  • Tracks cluster states
    • At any instant, the client uses the info protocol to communicate with the cluster and maintain a list of cluster nodes.
    • The Aerospike partitions algorithm determines which node stores a particular data partition.
    • Automatically tracks cluster size changes entirely transparent to the application to ensure that transactions do not fail during transitions, and applications do not need to restart on node arrival and departure.
  • Implements connection pooling s you don’t have to code, configure, or manage a pool of connections for the cluster.
  • Manages transactions, monitors timeouts, and retransmits requests
  • Thread safe—only one instance is required in a process.
Client architecture

Besides basic put() get() and delete() operations, Aerospike supports:

  • CAS (safe read-modify-write) operations.
  • In-database counters.
  • Batch get() operations.
  • Scan operations.
  • List and Map element operations such as removeByKey() or getByValueRange().
  • Queries—Bin values are indexed and the database searched by equality or range.
  • User-Defined Functions (UDFs) extend database processing by executing application code in Aerospike.
  • Aggregation—Use UDFs on a collection of records to return aggregate values.

Client feature matrix

The Client matrix lists up-to-date client library features.

Feedback

Was this page helpful?

What type of feedback are you giving?

What would you like us to know?

+Capture screenshot

Can we reach out to you?