Imagine you are assigned with the duty of designing recovery algorithms for the following scenarios: 1.A transaction t1 is a very long transaction which is updating the values of data items A, B, C and D, however as an algorithm designer, you are required to speed up the 'flushing process'. 2.As an algorithm designer, your goal is to perform an in depth investigation of system failure/crash. Also, you would like to maintain a thorough log file for the transactions. Using your knowledge of "Recovery Algorithms" discussed in this course, name an appropriate algorithm for each of the above scenarios. Also, in your own words give a 4 to 5 lines justification for each choice. 1I suggest Undo/No-redo Algorithm In this algorithm AFIMs of a transaction are flushed to the database disk under WAL before it commits. For this reason the recovery manager undoes all transactions during recovery. No transaction is redone. 2I suggest Shadow Paging Algorithm The AFIM does not overwrite its BFIM but recorded at another place on the disk. Thus, at any time a data item has AFIM and BFIM (Shadow copy of the data item) at two different places on the disk.