---
title: "Overview: Aerospike Rust client"
description: "Overview of Aerospike Rust client features: async/sync models, batch protocols, and data model enhancements."
---

# Overview: Aerospike Rust client

> For the complete documentation index see: [llms.txt](https://aerospike.com/docs/llms.txt)
> 
> All documentation pages available in markdown.

## Feature highlights

**Execution models:**

-   **Async-first:** Built for non-blocking IO, powered by [Tokio](https://tokio.rs/) by default, with optional support for [async-std](https://async.rs/).
-   **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 the new `BatchOperationAPI`.
-   **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.

**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](https://aerospike.com/docs/develop/data-types/collections/) 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.

See the [changelog](https://github.com/aerospike/aerospike-client-rust/blob/v2/CHANGELOG.md) 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:

-   Partition queries
-   Distributed ACID transactions
-   Strong consistency
-   Full TLS support for secure, production-ready deployments

## Ready to get started?

Quickstart

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

[Quickstart →](https://aerospike.com/docs/database/quick-start)

Best practices

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

[Best practices →](https://aerospike.com/docs/develop/client/rust/2.1.0/best-practices)

Error handling

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

[Error handling →](https://aerospike.com/docs/develop/client/rust/2.1.0/error-handling)

Usage examples

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

[Usage examples →](https://aerospike.com/docs/develop/client/rust/2.1.0/usage/atomic/create)