Sample_Questions_June_2013

advertisement
PMIT-6102
Advanced Database Systems
ByJesmin Akhter
Assistant Professor, IIT, Jahangirnagar University
Sample Questions
Lecture-09
1.
2.
3.
4.
Define Transaction. Draw and describe a transaction model.
What do you mean by rollback?
Explain Termination Condition of Transactions
Describe Properties of Transactions
Lecture-10
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Describe Transaction State
Explain Shadow-database scheme
What do you mean by Schedules? Give an example
Describe conflict serializability and view serializability with example.
What do you mean by Cascading and Cascadeless schedules
rollback?
Describe about Lock-compatibility matrix
Pitfalls of Lock-Based Protocols
Is Cascading roll-back is possible under two-phase locking? Explain
Explain about strict two-phase locking, Rigorous two-phase locking
Give an example from any of 3 classic problems Lost Update,
Uncommitted Dependency, Inconsistent Analysis problems and How
to prevent such problems?.
Lecture-11
1. Describe the Role of the distributed execution monitor
2. Draw Detailed Model of the Distributed
Execution Monitor
3. Explain Two-Phase Locking (2PL), Strict 2PL
4. Prove the Theorem "Two phase locking is a sufficient condition to
ensure serializablility".
5. Depict a figure of Distributed 2PL Algorithm
6. What do you mean by Wait-for graph? Show the Local versus
Global WFG.
7. Write a short notes about Deadlock Avoidance –Wait-Die &
Wound-Wait Algorithms.
8. Explain about Distributed Deadlock Detection
Lecture-12
1. What do you mean by A reliable distributed database
management system
2. Define Reliability, Availability
3. Describe Fault Classification with diagram
4. What do you mean by System failures? Describe any two Types of
Failures.
5. Draw and describe Local Recovery Management – Architecture
Lecture-13
1.
2.
3.
4.
5.
6.
Explain about In-Place Update Recovery Information with diagram.
Why Logging? Describe UNDO Protocol and REDO Protocol.
When to Write Log Records Into Stable Store?
Explain about Write–Ahead Log Protocol
Describe in details about Execution of LRM Commands.
Describe Handing Media Failures –Full Architecture with diagram.
Lecture-14
1. Describe about Functional Architecture of parallel database system .
2. Explain about shared-memory and shared-nothing Parallel DBMS
Architectures.
Lecture -13
Describe in details about Execution of LRM Commands.
• There are five commands that form the interface to the
LRM.
– begin transaction, read, write, commit, and abort
commands.
• A sixth interface command to the LRM: recover.
• The recover command is the interface that the operating
system has to the LRM.
• It is used during recovery from system failures when the
operating system asks the DBMS to recover the database
to the state that existed when the failure occurred.
Execution of LRM Commands
• The execution of some of these commands abort, commit,
and recover is quite dependent on the specific LRM
algorithms and on the interaction of the LRM with the
buffer manager.
• Others begin transaction, read, and write are quite
independent of these considerations.
Begin transaction, Read, and Write
Commands
• Begin transaction.
– It causes the LRM to write a begin transaction record
into the log.
• Read.
– The read command specifies a data item. The LRM tries
to read the specified data item from the buffer pages
that belong to the transaction. If the data item is not in
one of these pages, it issues a fetch command to the
buffer manager in order to make the data available.
Upon reading the data, the LRM returns it to the
scheduler.
Execution of Commands
• Write.
– The write command specifies the data item and the
new value. As with a read command, if the data item
is available in the buffers of the transaction, its value
is modified in the database buffers (i.e., the volatile
database).
– If it is not in the private buffer pages, a fetch
command is issued to the buffer manager, and the
data is made available and updated. The before image
of the data page, as well as its after image, are
recorded in the log. The local recovery manager then
informs the scheduler that the operation has been
completed successfully.
Execution of LRM Commands
• The fundamental design decision in the
implementation of the local recovery manager, the
buffer manager, and the interaction between the two
components is
– whether or not the buffer manager obeys the local
recovery manager’s instructions as to when to write the
database buffer pages to stable storage.
• Specifically, two decisions are involved. The first one is
– whether the buffer manager may write the buffer pages
updated by a transaction into stable storage during the
execution of that transaction,
– or it waits for the LRM to instruct it to write them back.
• We call this the fix/no-fix decision.
Execution of LRM Commands
• The second decision is
– whether the buffer manager will be forced to flush the
buffer pages updated by a transaction into the stable
storage at the end of that transaction (i.e., the commit
point),
– or the buffer manager flushes them out whenever it
needs to according to its buffer management algorithm.
• We call this the flush/no-flush decision.
• It is also called the force/no-force decision
Tutorial Exam on Lecture09 and Lecture 10
1.
2.
3.
4.
5.
6.
What do you mean by Cascading and Cascadeless schedules
rollback?
Describe Properties of Transactions
Explain Shadow-database scheme
Describe Pitfalls of Lock-Based Protocols
Is Cascading roll-back is possible under two-phase locking? Explain
Give an example from any of 3 classic problems Lost Update,
Uncommitted Dependency, Inconsistent Analysis problems and How
to prevent such problems?
Best of Luck
Download