Off-campus UMass Amherst users: To download dissertations, please use the following link to log into our proxy server with your UMass Amherst user name and password.

Non-UMass Amherst users, please click the view more button below to purchase a copy of this dissertation from Proquest.

(Some titles may also be available free of charge in our Open Access Dissertation Collection, so please check there first.)

Recovery in coherent shared-memory database systems

Lory D Molesky, University of Massachusetts Amherst

Abstract

Multi-node systems with coherent memory offer significant performance and programming advantages for applications which share data. Many variants of multiple node architectures exist, including shared memory multiprocessors (SMPs), distributed shared memory (DSM) machines, and client-server architectures. However, because of the side effects of the coherency protocol, a transaction executing strictly on a single node may become dependent on the validity of the memory of many nodes, thereby inducing unnecessary transaction aborts when one or more nodes fail. This happens when data items, as well as database support structures, such as index structures and shared lock tables, are stored in shared memory. To address these problems, we have developed crash recovery protocols for coherent memory database systems which avoid the unnecessary transaction aborts induced by the effects of using shared memory. Our recovery protocols guarantee that if one or more fail-stop nodes crash, all active transactions running on crashed nodes are aborted, but no active transactions running on crashed nodes are unnecessarily aborted. The key features of our recovery protocols are (a) logging-before-migration (LBM) protocols, which enforce specific logging policies prior to the migration of uncommitted data from one node to another, and (b) recovery mechanisms for ensuring that the appropriate undos and redos are performed upon a node failure. To show the practicality of our recovery protocols, we discuss how they can be implemented on cache-coherent multiprocessors and distributed shared memory systems. Specifically, we demonstrate that (1) for data items and for many types of database support structures, volatile (in-memory) logging is sufficient to avoid unnecessary transaction aborts, and (2) very low overhead implementations of this strategy can be achieved with existing features of coherent memory systems. This approach improves the availability of coherent shared memory systems without sacrificing their performance benefits.

Subject Area

Computer science

Recommended Citation

Molesky, Lory D, "Recovery in coherent shared-memory database systems" (1996). Doctoral Dissertations Available from Proquest. AAI9709631.
https://scholarworks.umass.edu/dissertations/AAI9709631

Share

COinS