# Aerospike Go Client

The Go client enables you to build applications in Go that store and retrieve data from an Aerospike cluster.

## Core functionality

Data Operations

[Create, read, update, and delete](https://aerospike.com/docs/develop/client/go/usage/atomic/create) individual records.

Perform compound reads/writes and server-side logic in a single call.

Secondary Indexing & Queries

[Query records](https://aerospike.com/docs/develop/client/go/usage/multi/queries/secondary) using indexed bin values via secondary indexes.

Apply filter expressions and predicate logic on queries for precise targeting.

Batch & Scan

[Retrieve or update multiple records](https://aerospike.com/docs/develop/client/go/usage/multi/batch) in parallel with a single request.

Iterate over all records in a set or namespace (use with caution in production environments).

User-defined functions

[Create, register, and execute a user-defined function (UDF)](https://aerospike.com/docs/develop/client/go/usage/udf/manage) with the Go client.