External failure-database recovery and security, Database Management System

External failure: A failure can also result because of an external cause, such as earthquakes, fire, floods, etc. The database must be duly backed up to avoid troubles occurring due to such failures.

In practice software failures are more ordinary than hardware failures.  Fortunately, recovery from software failures is much faster.

The essential unit of recovery is a transaction. But, how are the transactions can handle during recovery? Let some transactions are deadlocked, then at least one of these transactions has to be start again to break the deadlock and therefore the partial updates made by such restarted program in the database require to be undone so that the database did not go to an inconsistent state. So the transaction must roll back which makes sure that the transaction does not bring the database to an inconsistent state. This is one type of recovery. Let us take a case when a transaction has committed but the alteration made by the transaction has not been communicated to permanently store physical database. A software failure now happens and the contents of the RAM / CPU are lost. This remains the database in an inconsistent state. Such failure needs that on restarting the system the database be brought to a consistent state by using redo operation. The redo operation needs the changes made by the transaction again to bring the system to a consistent state. The database system then could be made available to the users. The main point here is that the database updates are performed in the buffer in the memory. Figure shows some cases of redo and undo. You can make more such cases.

                               511_External failure.png

 

Physical

Database

RAM

Activity

Case 1

A=6000

B=8000

A=4000

B=8000

Transaction T1 has just changed the value in RAM. Now it aborts, value in RAM is lost. No problem. But we are not sure that the physical database has been written back, so must undo.

Case 2

A=4000

B=8000

A=4000

B=8000

The value in physical database has got updated due to buffer management, now the transaction aborts. The transaction must be undone.

Case 3

A=6000

B=8000

A=4000

B=10000

Commit

The value B in physical database has not got updated due to buffer management. In case of failure now when the transaction has committed. The changes of transaction must be redone to ensure transfer of correct values to physical database.

                                                    Figure: Database Updates and Recovery

Posted Date: 3/12/2013 3:36:57 AM | Location : United States







Related Discussions:- External failure-database recovery and security, Assignment Help, Ask Question on External failure-database recovery and security, Get Answer, Expert's Help, External failure-database recovery and security Discussions

Write discussion on External failure-database recovery and security
Your posts are moderated
Related Questions
Draw an E_R Model for the following: An organization uses number of items of a equipment to generates goods. Each item is at one LOCATION, of one TYPE and has a DETAILED_DISCRI

Improved availability: The data in a distributed system may be replicated so that it is at more than one site. Thus, the failure of a node or a communication link does not necessar

need to get answer for questions 3&4 on this page in part 1

What is meant by functional dependencies? Consider a relation schema R and α C R and β C R. The functional dependency α ->β  holds on relational schema R if in any legal relati

external and internal mapping with examples

What is Trigger? Trigger: A database trigger is procedural code which is automatically executed in response to specific events on a particular table in a database. Triggers can

What is a checkpoint? List the operations to be performed by the system when a checkpoint is to be taken. What does the recovery system do if there is a crash? There is large n

Draw an ER diagram that shows the organization of a simple student database. The database captures the information about letter grades obtained by university students who enrolled

A domain is a set of permissible values that can be given to an attribute. So each attribute in a table has a definite domain. Values to these attributes cannot be assigned outside

Fragmentation: It is definite as partitioning of a relation into various fragments.Every fragment can be stored at a dissimilar site.