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

Explain stand alone query language in details, Explain Stand Alone Query La...

Explain Stand Alone Query Language in details? Stand alone Query Language - The query language that can be used interactively is known as stand alone query language. It does no

Explain the concept of deadlock, Explain the concept of deadlock Yes. I...

Explain the concept of deadlock Yes. It can direct to deadlock. Suppose that a batch of frames arrived correctly and were accepted. Then receiver will advance its window. Now s

Differentiate between a global and a local temporary table, Differentiate b...

Differentiate between a Global and a Local temporary table? - A local temporary table exists only for the duration of a connection or if defined inside a compound statement, fo

Explain the steps for reduction of e-r model, Explain the steps for reducti...

Explain the steps for reduction of E-R model into relational model. Ans:(a) Entity set in E-R model will be considered as table name in relational Model. (b) Attributes of e

What is the error handling, What is the error handling Traditionally, b...

What is the error handling Traditionally, bits have been sent over line lacking any error correcting scheme in physical layer. The presence of the CPU in each modem makes it po

What is meant by heuristic optimisation, What is meant by heuristic optimis...

What is meant by heuristic optimisation?Discuss the major heuristics that are applied during query optimisation.

Illustrate the diagram - association as a cache, Association as a cache ...

Association as a cache This association must be updated when any new element is added to it, but testing for overlap using association is more efficient.    Figure:

What is a super key, What is a super key? A super key is a set of one o...

What is a super key? A super key is a set of one or more attributes that collectively permits us to recognize uniquely an entity in the entity set.

Key to represent relationship between tables is called, Key to represent re...

Key to represent relationship amongs tables is called ? A Key that represent the relationship between tables is called Foreign Key.

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