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

commit as late as possible
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Distributed DBMS Degrees of Commitment. 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
slide-2
SLIDE 2

Distributed DBMS Degrees of Commitment. 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

slide-3
SLIDE 3

Distributed DBMS Degrees of Commitment. 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

slide-4
SLIDE 4

Distributed DBMS Degrees of Commitment. 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

Ti → Tj if R-W or W-W conflict Ti should commit before Tj

(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 Ti or Tj should commit, but not both

slide-5
SLIDE 5

Distributed DBMS Degrees of Commitment. 5

Sphere of Dependency Ancestor: A(T) Successor: S(T) (supporter) Competitor: C(T) A(T) = {T' / T' → T in GD} S(T) = {T'' / T → T'' in GD} C(T) = {T''' / T ↔ T''' in GD} Degree of commitment: D(Ti) D(Ti) > D(Tj) if W(S(Ti) > W(S(Tj))

weight function

* * *

slide-6
SLIDE 6

Distributed DBMS Degrees of Commitment. 6

If T is aborted then S(T) is aborted Loss = W(S(T)) Scycle (T1) = {T' / T'  S(T1) and T'  A(T1) } If W(Scycle(T1)) > W(T1) then abort T1