commit as late as possible
play

Commit as late as possible Analogy Real life actions | system - PowerPoint PPT Presentation

To increase concurrency Commit soon To protect against failures Commit as late as possible Analogy Real life actions | system transactions Goal is to: Maximize commitment of actions/transactions Minimize rollback Maximize


  1. To increase concurrency Commit soon To protect against failures Commit as late as possible Analogy Real life actions | system transactions Goal is to: • Maximize commitment of actions/transactions • Minimize rollback • Maximize concurrency • Minimize blocking Distributed DBMS Degrees of Commitment. 1

  2. Obstacles Transmission delays • Communication failure (network partition) • Site failures • Long and short transactions • Nested transactions • Possible solution: Assign a degree of {commitment, importance, success} to a • transaction Many ideas were originally mentioned by: C.T. Davies - ACM Conf., 1972 L.A. Bjor - ACM Conf., 1972 S.K. Srivastava - Symp. of Reliability in Dist. Soft/OB, 1982 Distributed DBMS Degrees of Commitment. 2

  3. Degree of commitment (for a single transaction in the system) = 0 when transaction arrives in the system = 1 when (a) transaction has left the system permanently (b) transaction can no longer be rolled back - resources necessary to back out are lost - some undoable action has been performed (when other transactions are involved) = 1 (a) when transaction has given results to other transactions who have a degree of comm = 1 (b) dependency information among transactions has been lost Distributed DBMS Degrees of Commitment. 3

  4. Dependency Graph GD = (V,E) V: set of nodes representing transactions (T) E: set of edges representing the dependency relation among T Types of dependency relations: (a) Concurrency control dependency T i → T j if R-W or W-W conflict T i should commit before T j (b) User defined dependencies (i) Ti → Tj if Ti should commit before Tj (ii) Ti ↔ Tj if Tj should commit simultaneously (iii) Ti ↔ Tj if either T i or T j should commit, but not both Distributed DBMS Degrees of Commitment. 4

  5. Sphere of Dependency Ancestor: A(T) Successor: S(T) (supporter) Competitor: C(T) A(T) = {T' / T' → T in G D } * S(T) = {T'' / T → T'' in G D } * C(T) = {T''' / T ↔ T''' in G D } * Degree of commitment: D(T i ) D(T i ) > D(T j ) if W(S(T i ) > W(S(T j )) weight function Distributed DBMS Degrees of Commitment. 5

  6. If T is aborted then S(T) is aborted Loss = W(S(T)) S cycle (T 1 ) = {T' / T'  S(T 1 ) and T'  A(T 1 ) } If W(S cycle (T 1 )) > W(T 1 ) then abort T 1 Distributed DBMS Degrees of Commitment. 6

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend