Problem 1
What is meant by the concurrent execution of database transactions in a multiuser system? Discuss why concurrency control is needed, and give informal examples.
Problem 2
Discuss the different types of failures. What is meant by catastrophic failure?
Problem 4
Draw a state diagram, and discuss the typical states that a transaction goes through during execution.
Problem 7
What is a schedule (history)? Define the concepts of recoverable, cascadeless, and strict schedules, and compare them in terms of their recoverability.
Problem 8
Discuss the different measures of transaction equivalence. What is the difference between conflict equivalence and view equivalence?
Problem 9
What is a serial schedule? What is a serializable schedule? Why is a serial schedule considered correct? Why is a serializable schedule considered correct?
Problem 11
Discuss how serializability is used to enforce concurrency control in a database system. Why is serializability sometimes considered too restrictive as a measure of correctness for schedules?
Problem 20
Why is an explicit transaction end statement needed in SQL but not an explicit begin statement?
Problem 22
Which of the following schedules is (conflict) serializable? For each serializable schedule, determine the equivalent serial schedules. a. \(r_{1}(X) ; r_{3}(X) ; w_{1}(X) ; r_{2}(X) ; w_{3}(X)\) b. \(r_{1}(X) ; r_{3}(X) ; w_{3}(X) ; w_{1}(X) ; r_{2}(X)\) c. \(r_{3}(X) ; r_{2}(X) ; w_{3}(X) ; r_{1}(X) ; w_{1}(X)\) d. \(r_{3}(X) ; r_{2}(X) ; r_{1}(X) ; w_{3}(X) ; w_{1}(X)\)