Your SlideShare is downloading. ×
Concurrency Conrol
Concurrency Conrol
Concurrency Conrol
Concurrency Conrol
Concurrency Conrol
Concurrency Conrol
Concurrency Conrol
Concurrency Conrol
Concurrency Conrol
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Concurrency Conrol

359

Published on

Lock-Based Protocols …

Lock-Based Protocols
Timestamp-Based Protocols
Validation-Based Protocols
Deadlock Handling

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
359
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Concurrency Control
  • 2. Concurrency Controln Lock-Based Protocolsn Timestamp-Based Protocolsn Validation-Based Protocolsn Deadlock Handling 2
  • 3. n When several transactions execute concurrently in the database, the system must control the interaction among the concurrent transactionsn This control is achieved through one of a variety of mechanisms called concurrency- control schemes 3
  • 4. Lock-Based Protocolsn A lock is a mechanism to control concurrent access to a data itemn Data items can be locked in two modes : 1. exclusive (X) mode. Data item can be both read as well as written. X-lock is requested using lock- X instruction. 2. shared (S) mode. Data item can only be read. S-lock is requested using lock-S instruction.n Lock requests are made to concurrency-control manager. Transaction can proceed only after request is granted. 4
  • 5. Timestamp-Based Protocolsn Each transaction is issued a timestamp when it enters the system. If an old transaction Ti has time-stamp TS(Ti), a new transaction Tj is assigned time-stamp TS(Tj) such that TS(Ti) <TS(Tj).n The protocol manages concurrent execution such that the time-stamps determine the serializability order. 5
  • 6. n In order to assure such behavior, the protocol maintains for each data Q two timestamp values: n W-timestamp(Q) is the largest time-stamp of any transaction that executed write(Q) successfully. n R-timestamp(Q) is the largest time-stamp of any transaction that executed read(Q) successfully. 6
  • 7. Validation-Based Protocoln Execution of transaction Ti is done in three phases. 1. Read and execution phase: Transaction Ti writes only to temporary local variables 2. Validation phase: Transaction Ti performs a ``validation test to determine if local variables can be written without violating serializability. 3. Write phase: If Ti is validated, the updates are applied to the database; otherwise, Ti is rolled back. 7
  • 8. Deadlock Handlingn System is deadlocked if there is a set of transactions such that every transaction in the set is waiting for another transaction in the set. 8
  • 9. Deadlock Recoveryn When deadlock is detected : n Some transaction will have to rolled back (made a victim) to break deadlock. Select that transaction as victim that will incur minimum cost. n Rollback -- determine how far to roll back transaction n Total rollback: Abort the transaction and then restart it. n More effective to roll back transaction only as far as necessary to break deadlock. n Starvation happens if same transaction is always chosen as victim. Include the number of rollbacks in the cost factor to avoid starvation 9

×