Computer ArchitectureFall 2007 © November 28, 2007 Karem A. Sakallah Lecture 24 Disk IO and RAID CS : Computer Architecture
Computer ArchitectureFall 2007 © RAID 0
Computer ArchitectureFall 2007 © RAID 1
Computer ArchitectureFall 2007 © RAID 3
Computer ArchitectureFall 2007 © RAID 5
Computer ArchitectureFall 2007 © Interfacing Processors and Peripherals
Computer ArchitectureFall 2007 © Disk Access Seek: position head over the proper track (3 to 14 ms. avg.) Rotate: wait for desired sector (.5 / RPM) Transfer: get the data (one or more 30 to 80 MB/sec
Computer ArchitectureFall 2007 © Manufacturing Advantages of Disk Arrays 14”10”5.25”3.5” Disk Array: 1 disk design Conventional: 4 disk designs Low End High End Disk Product Families
Computer ArchitectureFall 2007 © RAID: Redundant Array of Inexpensive Disks RAID 0: Striping (misnomer: non-redundant) RAID 1: Mirroring RAID 2: Striping + Error Correction RAID 3: Bit striping + Parity Disk RAID 4: Block striping + Parity Disk RAID 5: Block striping + Distributed Parity
Computer ArchitectureFall 2007 © Non-Redundant Array Striped: write sequential blocks across disk array High performance Poor reliability: MTTF Array = MTTF Disk / N MTTF Disk = 50,000 hours (6 years) N = 70 Disks MTTF Array = 700 hours (1 month) Odd Blocks Even Blocks
Computer ArchitectureFall 2007 © Redundant Arrays of Disks Files are "striped" across multiple spindles Redundancy yields high data availability When disks fail, contents are reconstructed from data redundantly stored in the array High reliability comes at a cost: –Reduced storage capacity –Lower performance
Computer ArchitectureFall 2007 © RAID 1: Mirroring Each disk is fully duplicated onto its “shadow” very high availability Bandwidth sacrifice on writes: Logical write = two physical writes Reads may be optimized Most expensive solution: 100% capacity overhead Used in high I/O rate, high availability environments
Computer ArchitectureFall 2007 © RAID 3: bit striping + parity
Computer ArchitectureFall 2007 © Redundant Arrays of Disks RAID 3: Parity Disk P logical record Striped physical records Parity computed across recovery group to protect against hard disk failures 33% capacity cost for parity in this configuration wider arrays reduce capacity costs, decrease expected availability, increase reconstruction time Arms logically synchronized, spindles rotationally synchronized logically a single high capacity, high transfer rate disk Targeted for high bandwidth applications: Scientific, Image Processing
Computer ArchitectureFall 2007 © Redundant Arrays of Disks RAID 5+: High I/O Rate Parity A logical write becomes four physical I/Os Independent writes possible because of interleaved parity Reed-Solomon Codes ("Q") for protection during reconstruction A logical write becomes four physical I/Os Independent writes possible because of interleaved parity Reed-Solomon Codes ("Q") for protection during reconstruction D0D1D2 D3 P D4D5D6 P D7 D8D9P D10 D11 D12PD13 D14 D15 PD16D17 D18 D19 D20D21D22 D23 P Disk Columns Increasing Logical Disk Addresses Stripe Unit Targeted for mixed applications
Computer ArchitectureFall 2007 © Redundant Arrays of Disks (RAID) Disk Mirroring, Shadowing (RAID 1) Each disk is fully duplicated onto its "shadow" Logical write = two physical writes 100% capacity overhead Parity Data Bandwidth Array (RAID 3) Parity computed horizontally Logically a single high data bw disk High I/O Rate Parity Array (RAID 5) Interleaved parity blocks Independent reads and writes Logical write = 2 reads + 2 writes Parity + Reed-Solomon codes