Configuring and Scheduling an Eager-Writing Disk Array for a Transaction Processing Workload

Transaction processing applications such as those exemplified by the TPC-C benchmark are among the most demanding I/O applications for conventional storage systems. Two complementary techniques exist to improve the performance of these systems. Eager-writing allows the free block that is closest to a disk head to be selected for servicing a write request, and mirroring allows the closest replica to be selected for servicing a read request. Applied individually, the effectiveness of each of these techniques is limited. An eager-writing disk array (EW-Array) combines these two complementary techniques. In such a system, eager-writing enables low-cost replica propagation so that the system can provide excellent performance for both read and write operations while maintaining a high degree of reliability. To fully realize the potential of an EW-Array, we must answer at least two key questions. First, since both eager-writing and mirroring rely on extra capacity to deliver performance improvements, how do we satisfy competing resource demands given a fixed amount of total disk space? Second, since eager-writing allows data to be dynamically located, how do we exploit this high degree of location independence in an intelligent disk scheduler? In this paper, we address these two key questions and compare the resulting EW-Array prototype performance against that of conventional approaches. The experimental results demonstrate that the eager-writing disk array is an effective approach to providing scalable performance for an important class of transaction processing applications.

[1]  Daniel M. Dias,et al.  Disk Mirroring with Alternating Deferred Updates , 1993, VLDB.

[2]  Edward Grochowski,et al.  Emerging Trends in Data Storage on Magnetic Hard Disk Drives , 1999 .

[3]  Mary Baker,et al.  Non-volatile memory for fast, reliable file systems , 1992, ASPLOS V.

[4]  Andrea J. Borr Transaction Monitoring in ENCOMPASS: Reliable Distributed Transaction Processing , 1981, VLDB.

[5]  Alexander A. Stepanov,et al.  Loge: A Self-Organizing Disk Controller , 1991 .

[6]  Qing Yang,et al.  DCD --- Disk Caching Disk: A New Approach for Boosting I/O Performance , 1996, 23rd Annual International Symposium on Computer Architecture (ISCA'96).

[7]  David A. Patterson,et al.  Virtual log based file systems for a programmable disk , 1999, OSDI '99.

[8]  Jai Menon,et al.  Floating Parity and Data Disk Arrays , 1993, J. Parallel Distributed Comput..

[9]  Dina Bitton,et al.  Disk Shadowing , 1988, VLDB.

[10]  John Wilkes,et al.  Disk scheduling algorithms based on rotational position , 1991 .

[11]  Setsuo Ohsuga,et al.  INTERNATIONAL CONFERENCE ON VERY LARGE DATA BASES , 1977 .

[12]  Elizabeth Shriver,et al.  Attribute-managed storage , 1995 .

[13]  Cyril U. Orji,et al.  Doubly distorted mirrors , 1993, SIGMOD '93.

[14]  Carl Staelin,et al.  An Implementation of a Log-Structured File System for UNIX , 1993, USENIX Winter.

[15]  Yiming Hu,et al.  DCD—disk caching disk: a new approach for boosting I/O performance , 1996, ISCA '96.

[16]  Qing Yang,et al.  RAPID-Cache-a reliable and inexpensive write cache for disk I/O systems , 1999, Proceedings Fifth International Symposium on High-Performance Computer Architecture.

[17]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[18]  David J. DeWitt,et al.  Chained declustering: a new availability strategy for multiprocessor database machines , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.

[19]  Carl Staelin,et al.  The HP AutoRAID hierarchical storage system , 1995, SOSP.

[20]  Daniel Stodolsky,et al.  Parity logging overcoming the small write problem in redundant disk arrays , 1993, ISCA '93.

[21]  Margo I. Seltzer,et al.  Disk Scheduling Revisited , 1990 .

[22]  Xiang Yu,et al.  Trading capacity for performance in a disk array , 2000, OSDI.

[23]  Alexander A. Stepanov,et al.  Mime: a high performance parallel storage device with strong recovery guarantees , 1997 .

[24]  Sara McMains,et al.  File System Logging versus Clustering: A Performance Comparison , 1995, USENIX.

[25]  Gregory R. Ganger,et al.  Towards higher disk head utilization: extracting free bandwidth from busy disk drives , 2000, OSDI.

[26]  Yitzhak Dishon,et al.  Disk dual copy methods and their performance , 1988, [1988] The Eighteenth International Symposium on Fault-Tolerant Computing. Digest of Papers.