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

How is the database organised in oracle, How is the database organised in O...

How is the database organised in Oracle? Database organized within Oracle in terms of table and table holds attributes and values. A database consists of one or more logical

Processing arrays, 1. A company wants a report containing a breakdown of pa...

1. A company wants a report containing a breakdown of payroll by department. Input, which should be stored in 3 parallel arrays, includes each employee's department number, hourly

What is the role of order by clause, What is the role of ORDER By Clause? ...

What is the role of ORDER By Clause? ORDER BY clause: The ORDER BY clause permits you to sort the records in your result set. The ORDER BY clause can just be used in select s

Assignment, how does Btree differ from a B+ - tree?

how does Btree differ from a B+ - tree?

Define the terms- ddl and dml, Define the terms   i) DDL   ...

Define the terms   i) DDL   ii) DML   DDL: Data base schema is specified by a set of definitions expressed by a special   language known as a data def

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

What is the difference between where and having clauses, What is the differ...

What is the difference between WHERE and HAVING clauses?. Predicates in the WHERE clause applies to every tuple while the predicate in the HAVING clause applies to groups.

Define weak and strong entity sets, Define weak and strong entity sets? ...

Define weak and strong entity sets? Weak entity set: entity set that do not have key attribute of their own are known as weak entity sets. Strong entity set: Entity set that

What is the disadvantage of a call by reference, What is the disadvantage o...

What is the disadvantage of a call by reference? During a call by reference damage or loss of data is not restricted to the subroutine, but will instantly lead to alters to th

Data base design for a museum information system, In this practical assignm...

In this practical assignment, we will run through a complete database application development cycle, starting with the schema design, from an initial data import to database applic

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