We compare two high-availability techniques for recovery from media failures in database systems. Both techniques achieve high availability by having two copies of all data and indexes, so that recovery is immediate. “Mirrored declustering” spreads two copies of each relation across two identical sets of disks. “Interleaved declustering” spreads two copies of each relation across one set of disks while keeping both copies of each tuple on separate disks. Both techniques pay the same costs of doubling storage requirements and requiring updates to be applied to both copies.
Mirroring offers greater simplicity and universality. Recovery can be implemented at lower levels of the system software (e.g., the disk controller). For architectures that do not share disks globally, it allows global and local cluster indexes to be independent. Also, mirroring does not require data to be declustered (i.e., spread over multiple disks).
Interleaved declustering offers significant improvements in recovery time, mean time to loss of both copies of some data, throughput during normal operation, and response time during recovery. For all architectures, interleaved declustering enables data to be spread over twice as many disks for improved load balancing. We show how tuning for interleaved declustering is simplified because it is dependent only on a few parameters that are usually well known for a specific workload and system configuration.
[1]
Tom W. Keller,et al.
Data placement in Bubba
,
1988,
SIGMOD '88.
[2]
Miron Livny,et al.
Multi-disk management algorithms
,
1987,
SIGMETRICS '87.
[3]
Randy H. Katz,et al.
A case for redundant arrays of inexpensive disks (RAID)
,
1988,
SIGMOD '88.
[4]
Michael Stonebraker,et al.
The Case for Shared Nothing
,
1985,
HPTS.
[5]
Jim Gray,et al.
Notes on Data Base Operating Systems
,
1978,
Advanced Course: Operating Systems.
[6]
David J. DeWitt,et al.
GAMMA - A High Performance Dataflow Database Machine
,
1986,
VLDB.
[7]
Dina Bitton,et al.
Disk Shadowing
,
1988,
VLDB.
[8]
Michael Stonebraker,et al.
A project on high performance I/0 subsystems
,
1989,
CARN.
[9]
이헌,et al.
[기술동향 소개]Fault Tolerant Computing System
,
1985
.
[10]
Philip A. Bernstein,et al.
Site Initialization, Recovery, and Backup in a Distributed Database System
,
1984,
IEEE Transactions on Software Engineering.
[11]
Michael Stonebraker,et al.
A measure of transaction processing power
,
1985
.