Logical logging to extend recovery to new domains

  • Authors:
  • David Lomet;Mark Tuttle

  • Affiliations:
  • Microsoft Research, Redmond, WA;Compaq Cambridge Research Lab, Cambridge, MA

  • Venue:
  • SIGMOD '99 Proceedings of the 1999 ACM SIGMOD international conference on Management of data
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

Recovery can be extended to new domains at reduced logging cost by exploiting “logical” log operations. During recovery, a logical log operation may read data values from any recoverable object, not solely from values on the log or from the updated object. Hence, we needn't log these values, a substantial saving. In [8], we developed a redo recovery theory that deals with general log operations and proved that the stable database remains recoverable when it is explained in terms of an installation graph. This graph was used to derived a write graph that determines a flush order for cached objects that ensures that the database remains recoverable. In this paper, we introduce a refined write graph that permits more flexible cache management that flushes smaller sets of objects. Using this write graph, we show how: (i) the cache manager can inject its own operations to break up atomic flush sets; and (ii) the recovery process can avoid redoing operations whose effects aren't needed by exploiting generalized recovery LSNs. These advances permit more cost-effective recovery for, e.g., files and applications.