Presentation is loading. Please wait.

Presentation is loading. Please wait.

Transaction Management and Concurrency Control

Similar presentations


Presentation on theme: "Transaction Management and Concurrency Control"— Presentation transcript:

1 Transaction Management and Concurrency Control
Chapter 9 Transaction Management and Concurrency Control Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel

2 In this chapter, you will learn:
What a database transaction is and what its properties are How database transactions are managed What concurrency control is and what role it plays in maintaining the database’s integrity What locking methods are and how they work How database recovery management is used to maintain database integrity Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

3 What is a Transaction? Logical unit of work
Must be either entirely completed or aborted No intermediate states are acceptable Figure 9.1 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 4

4 Example Transaction Examine current account balance Consistent state after transaction No changes made to Database SELECT ACC_NUM, ACC_BALANCE FROM CHECKACC WHERE ACC_NUM = ‘ ’; Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 6

5 Example Transaction Register credit sale of 100 units of product X to customer Y for $500 Consistent state only if both transactions are fully completed DBMS doesn’t guarantee transaction represents real-world event UPDATE PRODUCT SET PROD_QOH = PROD_QOH WHERE PROD_CODE = ‘X’; UPDATE ACCT_RECEIVABLE SET ACCT_BALANCE = ACCT_BALANCE WHERE ACCT_NUM = ‘Y’; Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 6

6 Transaction Properties
Atomicity All transaction operations must be completed Incomplete transactions aborted Durability Permanence of consistent database state Serializability Conducts transactions in serial order Important in multi-user and distributed databases Isolation Transaction data cannot be reused until its execution complete Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 9

7 Transaction Management with SQL
Transaction support COMMIT ROLLBACK User initiated transaction sequence must continue until: COMMIT statement is reached ROLLBACK statement is reached End of a program reached Program reaches abnormal termination Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 10

8 Transaction Log Tracks all transactions that update database
May be used by ROLLBACK command May be used to recover from system failure Log stores Record for beginning of transaction Each SQL statement Operation Names of objects Before and after values for updated fields Pointers to previous and next entries Commit Statement Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 12

9 Transaction Log Example
Table 9.1 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 12

10 Concurrency Control Coordinates simultaneous transaction execution in multiprocessing database Ensure serializability of transactions in multiuser database environment Potential problems in multiuser environments Lost updates Uncommitted data Inconsistent retrievals Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 14

11 Lost Updates Table 9.2 Table 9.3
Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

12 Uncommitted Data Table 9.4 Table 9.5
Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

13 Inconsistent Retrievals
Table 9.6 Table 9.7 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

14 Inconsistent Retrievals (con’t.)
Table 9.8 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

15 The Scheduler Establishes order of concurrent transaction execution
Interleaves execution of database operations to ensure serializability Bases actions on concurrency control algorithms Locking Time stamping Ensures efficient use of computer’s CPU Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 23

16 Read/Write Conflict Scenarios: Conflicting Database Operations Matrix
Table 9.9 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

17 Concurrency Control with Locking Methods
Lock guarantees current transaction exclusive use of data item Acquires lock prior to access Lock released when transaction is completed DBMS automatically initiates and enforces locking procedures Managed by lock manager Lock granularity indicates level of lock use Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 25

18 Database-Level Locking Sequence
Figure 9.2 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

19 Table-Level Lock Example
Figure 9.3 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

20 Page-Level Lock Example
Figure 9.4 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

21 Row-Level Lock Example
Figure 9.5 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

22 Binary Locks Two states Locked objects unavailable to other objects
Unlocked (0) Locked objects unavailable to other objects Unlocked objects open to any transaction Transaction unlocks object when complete Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 31

23 Example of Binary Lock Table
Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 31

24 Shared/Exclusive Locks
Exists when concurrent transactions granted READ access Produces no conflict for read-only transactions Issued when transaction wants to read and exclusive lock not held on item Exclusive Exists when access reserved for locking transaction Used when potential for conflict exists Issued when transaction wants to update unlocked data Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

25 Problems with Locking Transaction schedule may not be serializable
Managed through two-phase locking Schedule may create deadlocks Managed by using deadlock detection and prevention techniques Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

26 Two-Phase Locking Growing phase Shrinking phase Governing rules
Two transactions cannot have conflicting locks No unlock operation can precede a lock operation in the same transaction No data are affected until all locks are obtained Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

27 Two-Phase Locking Protocol
Figure 9.6 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

28 Deadlocks Occurs when two transactions wait for each other to unlock data Called deadly embrace Control techniques Deadlock prevention Deadlock detection Deadlock avoidance Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

29 How Deadlock Conditions Created
Table 9.11 Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel

30 Concurrency Control with Time Stamping Methods
Assigns global unique time stamp to each transaction Produces order for transaction submission Properties Uniqueness Monotonicity DBMS executes conflicting operations in time stamp order Each value requires two additional time stamps fields Last time field read Last update Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 42

31 Concurrency Control with Optimistic Methods
Assumes most database operations do not conflict Transaction executed without restrictions until committed Phases: Read Phase Validation Phase Write Phase Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 43

32 Database Recovery Management
Restores a database to previously consistent state Based on the atomic transaction property Level of backup Full backup Differential Transaction log Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 44

33 Causes of Database Failure
Software Hardware Programming Exemption Transaction External Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 44

34 Transaction Recovery Deferred-write and Deferred-update Write-through
Changes are written to the transaction log Database updated after transaction reaches commit point Write-through Immediately updated by during execution Before the transaction reaches its commit point Transaction log also updated Transaction fails, database uses log information to ROLLBACK Database Systems: Design, Implementation, & Management, 5th Edition, Rob & Coronel 47


Download ppt "Transaction Management and Concurrency Control"

Similar presentations


Ads by Google