Overview: Aerospike Go client
For the complete documentation index see: llms.txt
All documentation pages available in markdown.
The Aerospike Go client is a production-ready library for building high-performance applications on Aerospike Database. It implements Aerospike network protocols in pure Go, is goroutine friendly, and exposes the full database feature set: single-record create, read, update, and delete (CRUD), atomic multi-bin operations, batch reads and writes, indexed queries, collection data types (CDTs), user-defined functions (UDFs), and concurrent access patterns using Go’s native concurrency primitives.
Install with go get github.com/aerospike/aerospike-client-go/v8. See Installation for supported Go and OS versions.
Feature highlights
Record operations:
- CRUD and atomic updates: Create, read, update, and delete records, plus compound bin operations in a single round trip.
- Expressions: Attach filter expressions to reads and writes for conditional execution.
- Document model: Store and query JSON-like documents using Map bins and secondary indexes on nested values.
Query and scan:
- Query basics: Learn query concepts and patterns in Query basics.
- Primary-index queries: Iterate records in a namespace or set with partition-aware queries.
- Secondary-index queries: Filter on indexed bin values with secondary queries.
- Background queries: Run long-running queries asynchronously with background query jobs.
Multi-record operations:
- Batch protocol: Combine reads, writes, deletes, and exists checks in batch operations.
Collection data types:
- Lists and maps: Create, read, and modify List and Map bins with atomic server-side operations.
- Nested CDTs: Work with deeply nested structures using CDT context and nested list and map operations.
Server-side logic:
- UDFs: Register, manage, and apply user-defined functions on the server, including aggregations.
Operations and observability:
- Policies: Tune timeouts, retries, consistency, and write behavior with client policies.
- Metrics: Collect cluster connection stats and extended command latency metrics. See Monitor performance.
- Asynchronous patterns: Run concurrent reads and writes with goroutines and channels. See the Asynchronous API guide.
- Security: Connect with username/password authentication and TLS. See Connecting.
Data types:
- Full support for Aerospike scalar and collection data types, including Lists, Maps, HyperLogLog, and geospatial bins.
See the release notes for version history.
Ready to get started?
Installation
Install the client with go get and verify your Go and Aerospike Database versions.
Policies
Configure timeouts, retries, consistency modes, and write behavior for your workload.
Error handling
Handle client errors and interpret server result codes in your application.
Usage examples
Start with single-record CRUD examples.
- use page in llm
- Ask AI about this page