A two-phase approach to predictably scheduling real-time transactions
Patrick Eugene O'Neil, Krithi Ramamritham, Calton Pu · Prentice-Hall, Inc eBooks · 1995
We consider the problem of designing a database system that schedules ACID transactions to meet real-time deadlines. Two complementary algorithms are proposed, valid for a large class of applications, that minimize the unproductive data contention and limit to one the number of transaction aborts and subsequent retries arising from achieving serializability in concurrent execution. This is a crucial step in providing predictable transaction scheduling capability for real-time needs. Both algorithms proposed envision two phases of transaction execution, a first phase that gathers needed information to make the transaction predictable, and a second phase where transactions are scheduled for execution so as to avoid data and resource contention. The two algorithms together make up what we call the TwoPhase Approach.