Serialisable schedules, Database Management System

Assignment Help:

Serialisable Schedules:If the processes of two transactions conflict with each other, how to verify that no concurrency related problems have happened? For this, serialisability theory has been developed. Serialisability theory attempts to verify the correctness of the schedules. The rule of this theory is:

"A schedule S of n transactions is serialisable if it is equal to some serial schedule of the similar 'n' transactions".

A serial schedule is a schedule in which either transaction T1 is totally done before T2 or transaction T2  is totally done before T1. For instance, the following figure clears the two possible serial schedules of transactions T1  & T2.

Schedule A: T2 followed by T1

Schedule B: T1 followed by T2

Schedule

T1

T2

Schedule

T1

T2

Read X

 

Read X

Read X

Read X

 

Read Y

 

Read Y

Subtract 100

Subtract 100

 

Display X+Y

 

Display X+Y

Write X

Write X

 

Read X

Read X

 

Read Y

Read Y

 

Subtract 100

Subtract 100

 

Add 100

Add 100

 

Write X

Write X

 

Write Y

Write Y

 

Read Y

Read Y

 

Read X

 

Read X

Add 100

Add 100

 

Read Y

 

Read Y

Write Y

Write Y

 

Display X+Y

 

Display X+Y

                                                                         Figure: Serial Schedule of two transactions

Schedule C: An Interleaved Schedule

Schedule

T1

T2

Read X

Read X

 

Subtract 100

Subtract 100

 

Read X

 

Read X

Write X

Write X

 

Read Y

 

Read Y

Read Y

Read Y

 

Add 100

Add 100

 

Display X+Y

 

Display X+Y

Write Y

Write Y

 

                                                                           Figure: An Interleaved Schedule

Now, we have to figure out whether this interleaved schedule would be performing read and write in the same order as that of a serial schedule. If it does, then it is equivalent to a serial schedule, otherwise not. In case it is not equivalent to a serial schedule, then it may result in problems due to concurrent transactions.


Related Discussions:- Serialisable schedules

Mis, explain various steps uses in evaluation and maintenance of MIS.

explain various steps uses in evaluation and maintenance of MIS.

Queries, Find the names of all Albums that have more than 30 tracks. Result...

Find the names of all Albums that have more than 30 tracks. Result: (name: varchar(255))

Explain data dictonary on oracle, Explain data dictonary on oracle ? Da...

Explain data dictonary on oracle ? Data Dictionary - Data dictionaries are the system tables in which contain descriptions of the database objects and how they are structured.

What are aggregate functions, What are aggregate functions? And list the ag...

What are aggregate functions? And list the aggregate functions supported by SQL? Aggregate functions are functions that take a collection of values as input and return a one va

Discuss the term- design optimization, Discuss the term- Design Optimizatio...

Discuss the term- Design Optimization  We have seen various ways of representing the objects.The fundamental design model uses analysis model as the framework for implementati

What is a merge sort, QUESTION (a) Using an appropriate example, explai...

QUESTION (a) Using an appropriate example, explain what is a recursive function? (b) Explain in detail the C++ function given below. void search2(int list[],int n,int ele

Explain different addressing modes of 8086, 1. Explain different addressing...

1. Explain different addressing modes of 8086 Explanation of all addressing modes 2. Write a sequence of instructions to exchange two register contents using stack

Define a property that is not a property of transactions, Define a property...

Define a property that is not a property of transactions? Ans: Concurrency is not a property of transactions

ER diegrams, How to draw an ER diagram to a finance companz

How to draw an ER diagram to a finance companz

Define mysql_fetch_object(), What are the differences among MySQL_fetch_arr...

What are the differences among MySQL_fetch_array(), MySQL_fetch_object(), MySQL_fetch_row()? Mysql_fetch_object returns the result from the database like objects while mysql

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd