Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
COMP9311 Assignment
Note: Please make sure that you always use notations consistent with lecture
notes. Different notations will not be accepted.
Question 1 (12 marks)
Consider a relation R (A, B, C, D, E, G, H, I, J) and its FD set F = { AB → DE, BC →
G, CDE → HJ, H → AC, CI → EGH, DHI → EJ }.
Regarding the following questions. Give and justify your answers if the question is
specified.
1) Check if BH → E. Justify your answer. (1 mark)
2) Find all the candidate keys for R. (2 mark)
3) Determine the highest normal form of R with respect to F. Justify your answer.
(2 marks)
4) Find a minimal cover Fm for F. (2 marks)
5) Regarding F, does the decomposition R1 = {ABEH}, R2 = {CDHIJ}, R3 = {BGHJ}
of R satisfy the lossless join property? Please justify your answer. (2 marks)
6) Provide a step-by-step lossless decomposition of R into BCNF normal form. (3
marks)
Question 2 (8 marks)
Consider the schedule below. Here, R(*) and W(*) stand for ‘Read’ and ‘Write’,
respectively. T1, T2, T3, T4 and T5 represent five transactions and ti represents a
time slot.
t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 t16
T1 R(A) R(B) W(B) W(A)
T2 R(D) W(A)
T3 R(C) R(A) W(C) W(A)
T4 R(C) W(D) W(C)
T5 W(B) R(C) W(C)
Note: Each transaction begins at the time slot of its first operation and
commits right after its last operation (same time slot).
Regarding the following questions. Give and justify your answers.
1) Assume a checkpoint is made between t5 and t6, what should be done to the
five transactions when the crash happens between t12 and t13. (2 marks)
2) Is the transaction schedule conflict serializable? Give the full precedence graph
to justify your answer. (2 marks)
3) Construct a schedule (which is different from above) of these five transactions
which causes deadlock when using two-phase locking protocol. You should
clearly indicate all the locks and the corresponding unlocks in your schedule.
If no such schedule exists, explain why. (4 marks)
Question 3 (6 marks)
Consider the following query:
P1, P3, P3, P2, P3, P4, P5, P2, P1, P5, P2, P6.
(The user is trying to read page 1 from disk, then page 3, page 3, …)
Assume there are 3 buffers in the buffer pool.
1) Sketch the process of how blocks are replaced in the Least Recently Used
(LRU) policy. (1.5 marks)
2) Sketch the process of how blocks are replaced in the Most Recently Used
(MRU) policy. (1.5 marks)
3) Sketch the process of how blocks are replaced in the First In First Out
(FIFO) policy. (1.5 marks)
4) Among LRU, MRU and FIFO policies, which one performs better in the given
query? Why? (1.5 marks)
Assignment Submission
• You are required to submit an electronic version of your answers via
Moodle. While we accept handwritten submissions, please ensure they are
scanned or photographed clearly to ensure legibility.
• We only accept the .pdf format. Please name your files in the following
format: ass2_zID.pdf (e.g., ass2_z5000000.pdf).