How can disk arrays enhance performance and reliability? This comprehensive article provides an overview of disk arrays, exploring their architectural techniques for improving I/O performance and reliability. It outlines the driving forces behind the popularization of disk arrays, including the need for increased performance and data security. The article then examines the two primary architectural techniques used in disk arrays: striping, which boosts performance, and redundancy, which enhances reliability. Next, it describes seven RAID (Redundant Arrays of Inexpensive Disks) levels 0–6, comparing their performance, cost, and reliability. It goes on to discuss advanced research and implementation topics such as refining the basic RAID levels to improve performance and designing algorithms to maintain data consistency. Last, the article describes six disk array prototypes of products and discusses future opportunities for research, with an annotated bibliography disk array-related literature. This article provides a structured framework for understanding disk arrays and their applications, offering valuable insights for computer scientists, system architects, and storage engineers.
Published in _ACM Computing Surveys_, this article fits the journal's focus on mathematics and computer science. By offering a comprehensive overview of disk arrays and their performance characteristics, the article contributes to the understanding and advancement of computer architecture. This work is of interest to researchers and practitioners in computer science.