Home / Companies / Aerospike / Blog / Post Details
Content Deep Dive

Aerospike distributed ACID transaction design

Blog post from Aerospike

Post Details
Company
Date Published
Author
Srinivasan Seshadri
Word Count
1,917
Company Posts That Month
16
Language
English
Hacker News Points
-
Post removed?
No
Summary

Aerospike's distributed ACID transaction design aims to ensure near-zero impact on read/write command performance, support transactions with arbitrary sequences of reads and writes, guarantee strict serializability, exclude scans and queries from transactions, and provide a high-level client API for managing these transactions. The Aerospike client library coordinates transactions by tracking the state in a replicated monitor record, which allows the server to take over as coordinator if the client fails. The design uses dual records to achieve atomicity and lock primitive, ensuring that replication is aware of dual records. The client tracks all items read and written by the transaction for validation at the end of the transaction. Aerospike 8 achieves strict serializability with a combination of optimistic concurrency control for reads and strict two-phase locking for writes. The system also provides a minor change to ensure single record commands are serializable with transactions, making it an ideal solution for developers seeking rigorous transactional systems.

Trends Found in this Post

No tracked trend matches for this post yet.

Use This Data

Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.