0% found this document useful (0 votes)
27 views4 pages

Unit V-DBMS-NOTE

Kk

Uploaded by

knightneptune05
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views4 pages

Unit V-DBMS-NOTE

Kk

Uploaded by

knightneptune05
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

B19CST402–DATABASE MANAGEMENT SYSTEM

B19CST402–DATABASE MANAGEMENT SYSTEM

UNIT- V TRANSACTION PROCESSING 9


Transaction processing: Introduction – ACID Properties -Need for
concurrency control –Desirable properties of transaction –Schedule and
recoverability - RAID –Shadow paging –Types of locks –Two phase locking
–Deadlock –Timestamp based concurrency control –Recovery techniques
–Concepts -Immediate update –Deferred update

ACID Properties

To ensure the integrity and consistency of data during a transaction (A transaction


is a unit of program that updates various data items, read more about it here), the
database system maintains four properties. These properties are widely known
as ACID properties.
B19CST402–DATABASE MANAGEMENT SYSTEM

Atomicity
This property ensures that either all the operations of a transaction reflect in
database or none. The logic here is simple, transaction is a single unit, it can’t
execute partially. Either it executes completely or it doesn’t, there shouldn’t be a partial
execution.

Let’s take an example of banking system to understand this:


Suppose Account A has a balance of 400$ & B has 700$. Account A is transferring
100$ to Account B.

This is a transaction that has two operations


a) Debiting 100$ from A’s balance
b) Creating 100$ to B’s balance.
B19CST402–DATABASE MANAGEMENT SYSTEM

Let’s say first operation passed successfully while second failed, in this case A’s
balance would be 300$ while B would be having 700$ instead of 800$. This is
unacceptable in a banking system. Either the transaction should fail without executing
any of the operation or it should process both the operations. The Atomicity property
ensures that.

There are two key operations are involved in a transaction to maintain the atomicity
of the transaction.

Abort: If there is a failure in the transaction, abort the execution and rollback the
changes made by the transaction.

Commit: If transaction executes successfully, commit the changes to the database.

Consistency
Database must be in consistent state before and after the execution of the
transaction. This ensures that there are no errors in the database at any point of time.
Application programmer is responsible for maintaining the consistency of the
database.

Example:
A transferring 1000 dollars to B. A’s initial balance is 2000 and B’s initial balance is
5000.

Before the transaction:


Total of A+B = 2000 + 5000 = 7000$

After the transaction:


Total of A+B = 1000 + 6000 = 7000$

The data is consitendct before and after the execution of the transaction so this
example maintains the consistency property of the database.

Isolation
A transaction shouldn’t interfere with the execution of another transaction. To
preserve the consistency of database, the execution of transaction should take place
in isolation (that means no other transaction should run concurrently when there is a
transaction already running).
B19CST402–DATABASE MANAGEMENT SYSTEM

For example account A is having a balance of 400$ and it is transferring 100$ to


account B & C both. So we have two transactions here. Let’s say these transactions
run concurrently and both the transactions read 400$ balance, in that case the final
balance of A would be 300$ instead of 200$. This is wrong.

If the transaction were to run in isolation then the second transaction would have read
the correct balance 300$ (before debiting 100$) once the first transaction went
successful.

Durability
Once a transaction completes successfully, the changes it has made into the
database should be permanent even if there is a system failure. The recovery-
management component of database systems ensures the durability of transaction.

ACID properties are the backbone of a database management system. These


properties ensure that even though there are multiple transaction reading and writing
the data in the database, the data is always correct and consistent. Without ACID
properties there is no point in managing the data as it can’t be trusted a used in a
transaction.

You might also like