Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Log based recovery:Let us first describe the term transaction log in the context of DBMS. A transaction log is a record in DBMS that remains track of all the transactions of a database system that update any data values in the database. A log haves the following information about a transaction:
In a database system various transactions run simultaneously. When a transaction commits, the data buffers used by it require not be written back to the physical database stored on the secondary storage as these buffers may be used by various other transactions that have not yet committed. On the other hand, some of the data buffers that may have updates by various uncommitted transactions may be forced back to the physical database, as they is no longer being used by the database. So the transaction log helps in remembering which transaction did which alters. Therefore the system knows exactly how to divide the changes made by transactions that have already committed from those alters that is made by the transactions that did not yet commit. Any operation such as start transaction, insert /delete/update and end transaction (commit), adds information to the log having the transaction identifier and enough information to redo or undo the changes.
But how do we recover using log? Let us show this with the help of an example having three concurrent transactions that are active on ACCOUNTS table as:
Transaction T1
Transaction T2
Transaction T3
Read X
Read A
Read Z
Subtract 100
Add 200
Subtract 500
Write X
Write A
Write Z
Read Y
Add 100
Write Y
Figure: The sample transactions
Suppose that these transactions have the following log file (hypothetical) at a point:
Transaction Begin Marker
Transaction
Id
Operation on ACCOUNTS table
UNDO values (assumed)
REDO
values
Transaction Commit Marker
Y
T1
Sub on X Add on Y
500
800
400
Not done yet
N
T2
Add on A
1000
1200
T3
Sub on Z
900
Figure: A sample (hypothetical) Transaction log
Now suppose at this point of time a failure occurs, then how the recovery of the database will be completed on restart.
Values
Initial
Just before the failure
Operation
Required for recovery
Recovered Database Values
X
400 (assuming update has been done in physical database also)
UNDO
A
1000 (assuming update has not been done in physical database)
Z
900 (assuming update has not been done in physical database)
Create student database and retrieve course name taught by king? STUDENT (name, student#, class, major) COURSE (course name, course#, credit hours, department) SECTION (secti
What is Thread splitting A thread of control is a path by which a set of state diagrams on that a single object is active at a time. Objects are shared between threads
Describe the storage structure of indexed sequential files and their access method. Ans: Index offers a lookup capability to rapidly reach the vicinity of the desired record.
Is it mandatory to declare all the tables in Report by the key word tables for all the tables that exist in the structure of LDB, and are being explained in the Database part of LD
Run the following queries. For each query show 1) What you expect the output to be based upon the data 2) the SQL code and 3) the output running the query in Oracle. 1. Show all c
What is meant by heuristic optimisation? Discuss the main heuristics that are applied during query optimisation. Ans: In heuristic optimization, heuristics are employed to r
Explain the difference between using functions along with and without grouping attributes in relational algebra. Give examples. Ans: Group functions are used to group data of
Explain the utilities which help the DBA to manage the database? Every DBA uses database utilities to maintain and control their databases. But there is a lot of confusion wit
A database will be made to store information about patients in a hospital. On arrival, each patient’s personal details (name, address, and telephone number) are recorded where poss
Query Processor The query language processor is responsible for taking query language statements or shifting them from the English-like syntax of the query language to a form
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!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd