Skip to content

Developer SDK

The Aerospike Developer SDK is a modern, developer-friendly interface for Aerospike. It provides intuitive APIs that feel native to your language, with built-in Aerospike Expression Language (AEL) queries and intelligent error handling.

Why use the Developer SDKs?

  • Fluent, chainable methods that feel natural in Java and Python. No more verbose configuration objects.

  • Filter queries with readable expressions like "$.status == 'active' and $.age > 21". No more complex, hard-to-maintain filter expressions.

  • Actionable errors with recovery suggestions. Know exactly what went wrong and how to fix it.

  • Separate development from operational concerns. Focus on writing application logic, not database plumbing.

Quick example

import com.aerospike.client.sdk.policy.Behavior;
import com.aerospike.client.sdk.Cluster;
import com.aerospike.client.sdk.ClusterDefinition;
import com.aerospike.client.sdk.DataSet;
import com.aerospike.client.sdk.Record;
import com.aerospike.client.sdk.RecordResult;
import com.aerospike.client.sdk.RecordStream;
import com.aerospike.client.sdk.Session;
public class FluentQuickStart {
public static void main(String[] args) {
DataSet users = DataSet.of("test", "users");
try (Cluster cluster = new ClusterDefinition("localhost", 3000).connect()) {
Session session = cluster.createSession(Behavior.DEFAULT);
// Create or update a record.
session.upsert(users)
.bins("name", "email", "status", "age")
.id("user-1").values("Alice", "alice@example.com", "active", 28)
.execute();
// Query and print active users.
RecordStream stream = session.query(users)
.where("$.status == 'active'")
.execute();
stream.forEach(result -> {
Record record = result.recordOrThrow();
System.out.println(record);
});
// Cleanup for repeatable local runs.
session.delete(users.id("user-1")).execute().close();
}
}
}

Choose your path

New to Aerospike?

Start with the Quickstart to build your first app in 5 minutes.

Quickstart →

Migrating from Classic Client?

See what’s different and how to migrate your code.

Migration Guide →

Language support

LanguageStatusPackage
Java✅ Availablecom.aerospike:aerospike-client-sdk
Python✅ Availableaerospike-sdk
Rust🚧 Coming Soon

Next steps

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?