External failure-database recovery and security, Database Management System

Assignment Help:

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


Related Discussions:- External failure-database recovery and security

HYRISE, how to implement hyrise in C plus plus

how to implement hyrise in C plus plus

Sql, example of embedded SQL query

example of embedded SQL query

Define a view and a trigger, Define a view and a trigger. Construct a view ...

Define a view and a trigger. Construct a view for the above relations that have the information about suppliers and the elements they supply. The view holds the S#, SNAME, P# , PNA

Describe participation constraints, Describe Participation Constraints? ...

Describe Participation Constraints? Participation Constraints - The participation constraint exacts whether the existence of an entity depends on its being related to another

Three level architecture of dbms-logical architecture, Three Level Architec...

Three Level Architecture of DBMS or Logical DBMS Architecture The logical architecture defines how data in the database is perceived by users. It is not deals with how the da

Define deadlock recovery measures, Define Deadlock recovery measures       ...

Define Deadlock recovery measures                   To recover from deadlock, the cycle in the wait-for-graph should be broken. The common technique of doing this is to rollbac

MULTI-LIST FILE ORGANIZATION, sir, could anybody help me in getting complet...

sir, could anybody help me in getting complete information about the mentioned topic

Using column aliases-data manipulation language, Using Column aliases E...

Using Column aliases Example: To print column names as NAME and ANNUAL SALARY SELECT ENAME "NAME", SAL*12 "ANNUAL SALARY" FROM EMP;

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