Recovery Algorithms for Database Systems