Skip to content

Overview: Aerospike Rust client

For the complete documentation index see: llms.txt

All documentation pages available in markdown.

Feature highlights

Execution models

  • Async-first: Built for non-blocking IO, powered by Tokio by default, with optional support for async-std.
  • Sync support: Blocking APIs are available using a sync sub-crate for flexibility in legacy or mixed environments.

Advanced data operations

  • Batch protocol: full support for read, write, delete, and UDF operations through BatchOperation.
  • New query wire protocols: implements updated query protocols for improved consistency and performance.

Policy and expression enhancements

  • Replica policies: includes support for Replica, including PreferRack placement.
  • Policy additions: new fields such as allow_inline_ssd, respond_all_keys in BatchPolicy, read_touch_ttl, and QueryDuration in QueryPolicy.
  • Rate limiting: supports records_per_second for query throttling.
  • Circuit breaker: per-node error-rate limiting with ClientPolicy.max_error_rate and error_rate_window.
  • Compression: optional wire compression with compression_threshold on policy types.

Data model improvements

  • Type support: adds support for boolean particle type.
  • New data constructs: returns types such as Exists, OrderedMap, UnorderedMap now supported for CDT reads.
  • Value conversions: implements TryFrom<aerospike::Value> for seamless type interoperability.
  • Infinity and wildcard: supports Infinity, Wildcard, and corresponding expression builders expressions::infinity() and expressions::wildcard().
  • Size expressions: adds expressions::record_size() and expressions::memory_size() for granular control.

Transactions and batching (3.0.0)

  • Multi-record transactions (MRT): aerospike::txn APIs for distributed ACID workloads. See Transactions.
  • Batch streaming: Client::batch_foreach for per-row batch callbacks. See Batch operations.

See the changelog for more details.

What’s coming next?

We are working toward full functional parity with our other officially supported clients. Features on the roadmap include:

  • Strong consistency improvements

Ready to get started?

Quickstart

Check out the Aerospike client Quickstart for installation instructions and query examples.

Quickstart →

Best practices

Already familiar with the Rust client? The best practices guide can help you optimize for performance and reliability.

Best practices →

Error handling

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

Error handling →

Usage examples

Want to dive straight into the DSL? We have usage examples for all the basic CRUD operations.

Usage examples →