Improving Logging and Recovery Performance in Phoenix/App

Phoenix/App supports software components whose

states are made persistent across a system crash via redo

recovery, replaying logged interactions. Our initial

prototype force logged all request/reply events resulting

from inter-component method calls and returns. This

paper describes an enhanced prototype that implements:

(i) log optimizations to improve normal execution

performance; and (ii) checkpointing to improve recovery

performance. Logging is reduced in two ways: (1) we

only log information required to remove nondeterminism,

and we only force the log when an event

“commits” the state of the component to other parts of the

system; (2) we introduce new component types that

provide our enhanced system with more information,

enabling further reduction in logging. To improve

recovery performance, we save the values of the fields of

a component to the log in an application “checkpoint”.

We describe the system elements that we exploit for these

optimizations, and characterize the performance gains

that result.

01320021.pdf
PDF file

In  ICDE Conference

Publisher  IEEE Computer Society
Copyright © 2007 IEEE. Reprinted from IEEE Computer Society. This material is posted here with permission of the IEEE. Internal or personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution must be obtained from the IEEE by writing to pubs-permissions@ieee.org. By choosing to view this document, you agree to all provisions of the copyright laws protecting it.

Details

TypeInproceedings
Share
Share this page on Facebook
Share this page on Twitter
Share this page on LinkedIn
E-mail this page
RSS feeds
> Publications > Improving Logging and Recovery Performance in Phoenix/App