0% found this document useful (0 votes)
7 views

Exp 8

Uploaded by

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

Exp 8

Uploaded by

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

Experiment No-8

Aim: Implement Transaction and Concurrency control techniques


Theory:
A transaction is a logical unit of processing in a DBMS which entails one or more database
access operation. In a nutshell, database transactions represent real-world events of any
enterprise.
All types of database access operation which are held between the beginning and end
transaction statements are considered as a single logical transaction. During the transaction the
database is inconsistent. Only once the database is committed the state is changed from one
consistent state to another.

Concurrency control is the procedure in DBMS for managing simultaneous operations without
conflicting with each another. Concurrent access is quite easy if all users are just reading data.
There is no way they can interfere with one another. Though for any practical database, would
have a mix of reading and WRITE operations and hence the concurrency is a challenge.
Concurrency control is used to address such conflicts which mostly occur with a multi-user
system. It helps you to make sure that database transactions are performed concurrently without
violating the data integrity of respective databases.
Therefore, concurrency control is a most important element for the proper functioning of a
system where two or multiple database transactions that require access to the same data, are
executed simultaneously.
Concurrency Control Protocols
Different concurrency control protocols offer different benefits between the amount of
concurrency they allow and the amount of overhead that they impose.

● Lock-Based Protocols
● Two Phase
● Timestamp-Based Protocols
● Validation-Based Protocols

Concurrency control using Mysql Locks:

User 1
insert into Course values (4,"Data Analysis",80,"Data Science","Course",4,5000,3);

By user 2

User 2 trying to read


User 2 trying to write into locked table

User 1 implementing write lock


User 1 allowed to write

insert into Course values (74,"Data Analysis",80,14,"Course",4,5000,3);

User 2 trying to write on write lock by user1


User 2 trying to read on write lock by user1

User 1 reading on its write lock

You might also like