A transaction processing summary

Rodney Topor, Griffith University, last updated 15 December 2005

These informal notes attempt to summarise both classical database transaction processing theory and techniques and recent transaction processing proposals for concurrent programming and Internet (specifically Web) applications. In the interests of brevity, they are etremely selective.

1. Classical database transaction processing

1.1 Concurrency control concepts

This section covers the basic theory of atomic transactions and serializability.

1.2 Concurrency control implementation

This section covers the basic implementation techniques based on locks, namely strict two-phase locking, and SQL support for serializability.

1.3 Recovery

This section covers basic recovery concepts and techniques, and the ARIES recovery framework in particular.

1.4 Distributed concurrency control

This section describes the distributed transaction commit problem, the two-phase commit protocol, and the recent, fault-tolerant, Paxos commit protocol.

1.5 Distributed recovery

Not yet available.

1.6 General references

2. Transaction processing for Internet applications

This section covers several different approaches to Internet (esp., Web) applications and associated transaction processing models.

3. Atomic transactions in concurrent programming

This section covers high-level programming constructs based on software transactional memory to support atomic transactions in concurrent programming, particularly concurrent functional prgramming.