Skip to main content
Apache Ignite

ACID Transactions

Full ACID across any number of partitions
ACID Transactions

Apache Ignite delivers full ACID transactions across any number of partitions. MVCC provides snapshot isolation without blocking readers. Distributed replication ensures durability. Lock tables, transaction state, and commit decisions all remain in memory.

Snapshot Isolation Without Blocking

MVCC Foundation

Every write creates a new version tagged with a timestamp. Transactions read from a snapshot determined by their start time. Readers and writers never block each other. This delivers REPEATABLE_READ isolation without traditional locking overhead.

Version Management

The system maintains multiple versions until older snapshots complete. Storage engines handle version cleanup automatically. Analytical queries execute on stable snapshots while transactional updates proceed at full speed.

Read Consistency

Transactions see a consistent snapshot of the database at their start time. Long-running reads don't block operational writes. No phantom reads. No non-repeatable reads. Snapshot isolation protects against anomalies.

Write Conflicts

The system detects write-write conflicts during commit. Conflicting transactions abort with serialization errors. Applications can retry failed transactions. This provides safety without requiring locks during execution.

Distributed Durability

Consensus-Based Commit

Transactions commit through Raft consensus. The system replicates transaction changes through the distributed consensus log. Data becomes durable once replicated to a majority of replicas. No local write-ahead log needed.

Cross-Partition Coordination

Transactions span any number of partitions. A coordinator manages distributed commit protocol. All participating partitions must agree before commit completes. Failures trigger automatic rollback across all partitions.

Failure Handling

The system handles node failures during transaction execution. Ongoing transactions on failed nodes abort automatically. Committed transactions remain durable through replication. No data loss after commit acknowledgment.

Performance Characteristics

Lock tables and transaction state live in memory. Commit decisions execute without disk I/O. Durability comes from distributed replication rather than local logging. This delivers transactional guarantees with memory-first performance.

Isolation Levels

REPEATABLE_READ (Default)

The default isolation level provides snapshot isolation. Transactions see a consistent snapshot from their start time. Prevents dirty reads, non-repeatable reads, and phantom reads. Write conflicts detected at commit time.

READ_COMMITTED

Each statement sees committed data as of statement start. Lower isolation provides better concurrency for read-heavy workloads. Still prevents dirty reads. Non-repeatable reads and phantom reads possible within transaction.

Choosing Isolation

Use REPEATABLE_READ for transactions requiring consistent snapshots across multiple operations. Use READ_COMMITTED when statement-level consistency suffices and you need maximum read concurrency. Both levels prevent dirty reads.

Concurrency Control

Both isolation levels use optimistic concurrency. No locks held during transaction execution. Conflicts detected at commit. Applications retry on serialization failures. This approach maximizes throughput for memory-first operations.

Use Cases

Event Stream Processing

Process event streams with ACID guarantees. Update multiple aggregations atomically. Maintain consistency across derived tables. Rollback on processing errors. Transactions ensure exactly-once semantics.

Microservices State

Store microservices state with transactional consistency. Coordinate state updates across services. Maintain referential integrity without external coordination. Achieve consistency without distributed transaction managers.

Analytical Queries

Run analytical queries on stable snapshots. Long-running aggregations don't block updates. Queries see consistent data across all partitions. MVCC enables mixed workloads without interference.

How Transactions Connect to the Foundation

MVCC Enables Isolation

Multi-Version Concurrency Control provides snapshot isolation without locks. Version chains support concurrent reads and writes. Readers never block writers. Writers never block readers. This foundation enables ACID with memory-first performance.

Distributed Replication Ensures Durability

Raft consensus provides durability without traditional write-ahead logs. Transaction changes replicate through the distributed consensus log. Majority replication ensures durability. No local WAL overhead.

Memory-First Coordination

Lock tables, transaction state, and commit decisions live in memory. No disk I/O for coordination. Distributed commit protocol executes against in-memory state. This delivers transactional guarantees with minimal latency.
Ready to Start?

Discover our quick start guide and build your first application in 5-10 minutes

Quick Start Guide