Skip to main content

Schedule in DBMS

Schedule

A series of operation from one transaction to another transaction is known as schedule. It is used to preserve the order of the operation in each of the individual transaction.

Schedule in DBMS


1. Serial Schedule
The serial schedule is a type of schedule where one transaction is executed completely before starting another transaction. In the serial schedule, when the first transaction completes its cycle, then the next transaction is executed.

For example: Suppose there are two transactions T1 and T2 which have some operations. If it has no interleaving of operations, then there are the following two possible outcomes:
  1. Execute all the operations of T1 which was followed by all the operations of T2. 
  2. Execute all the operations of T1 which was followed by all the operations of T2. 

  • In the given (a) figure, Schedule A shows the serial schedule where T1 followed by T2.
  • In the given (b) figure, Schedule B shows the serial schedule where T2 followed by T1.

2. Non-serial Schedule
  • If interleaving of operations is allowed, then there will be non-serial schedule.
  • It contains many possible orders in which the system can execute the individual operations of the transactions.
  • In the given figure (c) and (d), Schedule C and Schedule D are the non-serial schedules. It has interleaving of operations.

3. Serializable Schedule
  • The serializability of schedules is used to find non-serial schedules that allow the transaction to execute concurrently without interfering with one another. 
  • It identifies which schedules are correct when executions of the transaction have interleaving of their operations.
  • A non-serial schedule will be serializable if its result is equal to the result of its transactions executed serially.

Schedule in DBMS

Schedule in DBMS

Schedule in DBMS

Schedule in DBMS



Here,

Schedule A and Schedule B are serial schedule.

Schedule C and Schedule D are Non-serial schedule.

Comments

Popular posts from this blog

SQL Constraints, NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK, DEFAULT, CREATE INDEX

SQL Constraints (Image by - Sharma Guides | Subham232330) Constraints   |   |- CHECK   |   |- NOT NULL   |   |- UNIQUE   |   |- PRIMARY KEY   |   |- DEFAULT   |   |- FOREIGN KEY   |   |- INDEX * These constraints are also known as Integrity Constraints . * SQL Constraints:- Constraints are the rules and restrictions applied to the data in a table. * NOT NULL:- Value cannot be Null in a column. * UNIQUE:- Value cannot be the same in a column. * PRIMARY KEY:- Used to uniquely identify a row. * FOREIGN KEY:- References a row in another table. * CHECK:- Satisfies a specific condition. * DEFAULT:- Set default value. * CREATE INDEX:- Used to speed up the reading process.

Authentication vs Authorization

Authentication vs Authorization - Authentication and authorization are the two words used in the security world. They might sound similar but are completely different from each other. Authentication is used to authenticate someone's identity, whereas authorization is a way to provide permission to someone to access a particular resource. These are the two basic security terms and hence need to be understood thoroughly. In this topic, we will discuss what authentication and authorization are and how they are differentiated from each other. What is Authentication? Authentication is the process of identifying someone's identity by assuring that the person is the same as what he is claiming for. It is used by both server and client. The server uses authentication when someone wants to access the information, and the server needs to know who is accessing the information. The client uses it when he wants to know that it is the same server that it claims to be. The authentication by t...

Implement Echo client and Echo server using TCP Sockets

Implement Echo client and Echo server using TCP Sockets EchoServer.java import java.net.*; import java.io.*; public class EServer { public static void main(String args[]) { ServerSocket s=null; String line; DataInputStream is; PrintStream ps; Socket c=null; try { s=new ServerSocket(9000); } catch(IOException e) {} try { System.out.println(e); c=s.accept(); is=new DataInputStream(c.getInputStream()); ps=new PrintStream(c.getOutputStream()); while(true) { line=is.readLine(); ps.println(line); }} catch(IOException e) { System.out.println(e); }}} EchoClient.java import java.net.*; import java.io.*; public class EClient { public static void main(String arg[]) { Socket c=null; String line; DataInputStream is,is1; PrintStream os; try { InetAddress ia = InetAddress.getLocalHost(); c=new Socket(ia,9000); } catch(IOException e) {} try { System.out.println(e); os=new PrintStream(c.getOutputStream()); is=new DataInputStream(System.in); is1=new DataInputStream(c.getInputStream()); while(true) { Sys...