CS 136, Advanced Architecture Storage. CS136 2 Case for Storage Shift in focus from computation to communication and storage of information –E.g., Cray.

Slides:



Advertisements
Similar presentations
Redundant Array of Independent Disks (RAID) Striping of data across multiple media for expansion, performance and reliability.
Advertisements

A CASE FOR REDUNDANT ARRAYS OF INEXPENSIVE DISKS (RAID) D. A. Patterson, G. A. Gibson, R. H. Katz University of California, Berkeley.
CS 136, Advanced Architecture Storage. CS136 2 Case for Storage Shift in focus from computation to communication and storage of information –E.g., Cray.
CSCE430/830 Computer Architecture
Enhanced Availability With RAID CC5493/7493. RAID Redundant Array of Independent Disks RAID is implemented to improve: –IO throughput (speed) and –Availability.
CSE521: Introduction to Computer Architecture Mazin Yousif I/O Subsystem RAID (Redundant Array of Independent Disks)
Lecture 36: Chapter 6 Today’s topic –RAID 1. RAID Redundant Array of Inexpensive (Independent) Disks –Use multiple smaller disks (c.f. one large disk)
RAID Technology. Use Arrays of Small Disks? 14” 10”5.25”3.5” Disk Array: 1 disk design Conventional: 4 disk designs Low End High End Katz and Patterson.
CS 430 – Computer Architecture Disks
I/O Systems Processor Cache Memory - I/O Bus Main Memory I/O Controller Disk I/O Controller I/O Controller Graphics Network interrupts.
CS252/Patterson Lec 6.1 2/2/01 CS252 Graduate Computer Architecture Lecture 6: I/O 2: Failure Terminology, Examples, Gray Paper and a little Queueing Theory.
CS61C L40 I/O: Disks (1) Ho, Fall 2004 © UCB TA Casey Ho inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 39 I/O : Disks Microsoft.
Computer ArchitectureFall 2007 © November 28, 2007 Karem A. Sakallah Lecture 24 Disk IO and RAID CS : Computer Architecture.
CS61C L16 Disks © UC Regents 1 CS61C - Machine Structures Lecture 16 - Disks October 20, 2000 David Patterson
Other Disk Details. 2 Disk Formatting After manufacturing disk has no information –Is stack of platters coated with magnetizable metal oxide Before use,
1 Lecture 26: Storage Systems Topics: Storage Systems (Chapter 6), other innovations Final exam stats:  Highest: 95  Mean: 70, Median: 73  Toughest.
First magnetic disks, the IBM 305 RAMAC (2 units shown) introduced in One platter shown top right. A RAMAC stored 5 million characters on inch.
CS61C L40 I/O: Disks (1) Garcia, Fall 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures.
Computer ArchitectureFall 2008 © November 12, 2007 Nael Abu-Ghazaleh Lecture 24 Disk IO.
Disk Technologies. Magnetic Disks Purpose: – Long-term, nonvolatile, inexpensive storage for files – Large, inexpensive, slow level in the memory hierarchy.
Cs 61C L15 Disks.1 Patterson Spring 99 ©UCB CS61C Anatomy of I/O Devices: Magnetic Disks Lecture 15 March 10, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson)
S.1 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output Cache Main Memory Secondary Memory (Disk)
DAP Fall.‘00 ©UCB 1 Storage Devices and RAID Professor David A. Patterson Computer Science 252 Fall 2000.
Chapter 6: Storage Systems David Patterson Electrical Engineering and Computer Sciences University of California, Berkeley
CS 61C L41 I/O Disks (1) Garcia, Spring 2004 © UCB Lecturer PSOE Dan Garcia inst.eecs.berkeley.edu/~cs61c CS61C : Machine.
CSE 451: Operating Systems Winter 2010 Module 13 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura.
CS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 39: IO Disks Instructor: Dan Garcia 1.
Lecture 11: Storage Systems Disk, RAID, Dependability Kai Bu
Redundant Array of Inexpensive Disks (RAID). Redundant Arrays of Disks Files are "striped" across multiple spindles Redundancy yields high data availability.
CSE 502 Graduate Computer Architecture Lec – Disk Storage Larry Wittie Computer Science, StonyBrook University and.
Lecture 11: Storage Systems Disk, RAID, Dependability Kai Bu
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
EECS 252 Graduate Computer Architecture Lec 18 – Storage David Patterson Electrical Engineering and Computer Sciences University of California, Berkeley.
Lecture 4 1 Reliability vs Availability Reliability: Is anything broken? Availability: Is the system still available to the user?
CS 352 : Computer Organization and Design University of Wisconsin-Eau Claire Dan Ernst Storage Systems.
RAID Storage EEL4768, Fall 2009 Dr. Jun Wang Slides Prepared based on D&P Computer Architecture textbook, etc.
N-Tier Client/Server Architectures Chapter 4 Server - RAID Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept RAID – Redundant Array.
I/O – Chapter 8 Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
1 Chapter 7: Storage Systems Introduction Magnetic disks Buses RAID: Redundant Arrays of Inexpensive Disks.
Redundant Array of Inexpensive Disks aka Redundant Array of Independent Disks (RAID) Modified from CCT slides.
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
CSE 502 Graduate Computer Architecture Lec 21 – Disk Storage Larry Wittie Computer Science, StonyBrook University and.
Storage. 10/20/20152 Case for Storage Shift in focus from computation to communication and storage of information –E.g., Cray Research/Thinking Machines.
EEL 5764: Graduate Computer Architecture Storage These slides are provided by: David Patterson Electrical Engineering and Computer Sciences, University.
"1"1 Introduction to Managing Data " Describe problems associated with managing large numbers of disks " List requirements for easily managing large amounts.
CSC 7080 Graduate Computer Architecture Lecture 13 - Storage Dr. Khalaf Notes adapted from: David Patterson Electrical Engineering and Computer Sciences.
Αρχιτεκτονική Υπολογιστών Ενότητα # 6: RAID Διδάσκων: Γεώργιος Κ. Πολύζος Τμήμα: Πληροφορικής.
CS 61C: Great Ideas in Computer Architecture Dependability and RAID Lecture 25 Instructors: John Wawrzynek & Vladimir Stojanovic
Chapter 8 Secondary Memory. Topics Types of External Memory Magnetic Disk Optical Magnetic Tape.
CS 6290 I/O and Storage Milos Prvulovic. Storage Systems I/O performance (bandwidth, latency) –Bandwidth improving, but not as fast as CPU –Latency improving.
1 Lecture 27: Disks Today’s topics:  Disk basics  RAID  Research topics.
1 CEG 2400 Fall 2012 Network Servers. 2 Network Servers Critical Network servers – Contain redundant components Power supplies Fans Memory CPU Hard Drives.
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
Enhanced Availability With RAID CC5493/7493. RAID Redundant Array of Independent Disks RAID is implemented to improve: –IO throughput (speed) and –Availability.
W4118 Operating Systems Instructor: Junfeng Yang.
Lecture 11: Storage Systems Disk, RAID, Dependability Kai Bu
CMSC 611: Advanced Computer Architecture I/O & Storage Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
Advanced Computer Architecture CS 704 Advanced Computer Architecture Lecture 40 Input Output Systems (RAID and I/O System Design) Prof. Dr. M. Ashraf Chughtai.
Vladimir Stojanovic & Nicholas Weaver
CS 554: Advanced Database System Notes 02: Hardware
Lecture 13 I/O.
RAID RAID Mukesh N Tekwani
CSE 451: Operating Systems Winter 2009 Module 13 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura 1.
Mark Zbikowski and Gary Kimura
CSE 451: Operating Systems Winter 2012 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura 1.
Appendix D– Storage Systems
Storage Systems Disk, RAID, Dependability
RAID RAID Mukesh N Tekwani April 23, 2019
Presentation transcript:

CS 136, Advanced Architecture Storage

CS136 2 Case for Storage Shift in focus from computation to communication and storage of information –E.g., Cray Research/Thinking Machines vs. Google/Yahoo –“The Computing Revolution” (1960s to 1980s) ⇒ “The Information Age” (1990 to today) Storage emphasizes reliability, scalability, and cost/performance What is “software king” that determines which HW features actually used? –Compiler for processor –Operating system for storage Also has own performance theory—queuing theory—balances throughput vs. response time

CS136 3 Outline Magnetic Disks RAID Advanced Dependability/Reliability/Availability

CS136 4 Disk Figure of Merit: Areal Density Bits recorded along a track –Metric is Bits Per Inch (BPI) Number of tracks per surface –Metric is Tracks Per Inch (TPI) Disk designs brag about bit density per unit area –Metric is Bits Per Square Inch: Areal Density = BPI x TPI

CS136 5 Historical Perspective 1956 IBM Ramac — early 1970s Winchester –Developed for mainframe computers, proprietary interfaces –Steady shrink in form factor: 27 in. to 14 in. Form factor and capacity drives market more than performance 1970s developments –8”, 5.25” floppy disk form factor (microcode into mainframe) –Emergence of industry-standard disk interfaces Early 1980s: PCs and first-generation workstations Mid 1980s: Client/server computing –Centralized storage on file server »Accelerates disk downsizing: 8-inch to 5.25 –Mass-market disk drives become a reality »Industry standards: SCSI, IPI, IDE »5.25-inch to 3.5 inch-drives for PCs, End of proprietary interfaces 1990s: Laptops => 2.5-inch drives 2000s: What new devices leading to new drives?

CS136 6 Future Disk Size and Performance Continued advance in capacity (60%/yr) and bandwidth (40%/yr) Slow improvement in seek, rotation (8%/yr) Time to read whole disk: YearSequentialRandom (1 sector/seek) minutes6 hours minutes 1 week(!) minutes 3 weeks (SCSI) minutes 7 weeks (SATA)

CS136 7 Use Arrays of Small Disks? 3.5” Disk Array: 1 disk design Low End High End 14” 10”5.25”3.5” Conventional: 4 disk designs Katz and Patterson asked in 1987: Can smaller disks be used to close gap in performance between disks and CPUs?

CS136 8 Advantages of Small-Form-Factor Disk Drives Low cost/MB High MB/volume High MB/watt Low cost/Actuator Cost and Environmental Efficiencies

CS136 9 Replace Small Number of Large Disks with Large Number of Small Disks! (1988 Disks) Capacity Volume Power Data Rate I/O Rate MTTF Cost IBM 3390K 20 GBytes 97 cu. ft. 3 KW 15 MB/s 600 I/Os/s 250 KHrs $250K IBM 3.5" MBytes 0.1 cu. ft. 11 W 1.5 MB/s 55 I/Os/s 50 KHrs $2K x70 23 GBytes 11 cu. ft. 1 KW 120 MB/s 3900 IOs/s ??? Hrs $150K Disk arrays have potential for large data and I/O rates, high MB per cu. ft., high MB per KW, but what about reliability? 9X 3X 8X 6X

CS Array Reliability Reliability of N disks = Reliability of 1 Disk ÷ N 50,000 Hours ÷ 70 disks = 700 hours Disk system MTTF: Drops from 6 years to 1 month! Arrays (without redundancy) too unreliable to be useful! Hot spares support reconstruction in parallel with access: very high media availability can be achieved Hot spares support reconstruction in parallel with access: very high media availability can be achieved

CS Redundant Arrays of (Inexpensive) Disks Files are "striped" across multiple disks Redundancy yields high data availability –Availability: service still provided to user, even if some components failed Disks will still fail Contents reconstructed from data redundantly stored in the array –Capacity penalty to store redundant info –Bandwidth penalty to update redundant info

CS RAID 1: Disk Mirroring/Shadowing Each disk fully duplicated onto “mirror” –Can get very high availability Lose bandwidth on write –Logical write = two physical writes But reads can be optimized Most expensive solution: 100% capacity overhead (RAID 2 not interesting, so skip) recovery group

CS RAID 3: Parity Disk P logical record P contains sum of other disks per stripe mod 2 (“parity”) If disk fails, subtract P from sum of other disks to find missing information Striped physical records

CS RAID 3 Sum computed across recovery group to protect against hard-disk failures –Stored in P disk Logically, single high-capacity, high-transfer-rate disk –Good for large transfers Wider arrays reduce capacity costs –But decrease availability 3 data disks and 1 parity disk ⇒ 33% capacity cost

CS Inspiration for RAID 4 RAID 3 relies on parity disk to spot read errors But every sector has own error detection –So use disk’s own error detection to catch errors –Don’t have to read parity disk every time Allows simultaneous independent reads to different disks –(If striping is done on per-block basis)

CS RAID 4: High-I/O-Rate Parity D0D1D2 D3 P D4D5D6 PD7 D8D9 PD10 D11 D12 PD13 D14 D15 P D16D17 D18 D19 D20D21D22 D23 P Disk Columns Increasing Logical Disk Address Stripe Insides of 5 disks Example: small read D0 & D5, large write D12-D15 Example: small read D0 & D5, large write D12-D15

CS Inspiration for RAID 5 RAID 4 works well for small reads Small writes (write to one disk) problematic: –Option 1: read other data disks, create new sum and write to Parity Disk –Option 2: since P has old sum, compare old data to new data, add the difference to P Small writes limited by parity disk: Writes to D0, D5 must both also write to P disk D0 D1D2 D3 P D4 D5 D6 P D7

CS RAID 5: High-I/O-Rate Interleaved Parity Independent writes possible because of interleaved parity Independent writes possible because of interleaved parity D0D1D2 D3 P D4D5D6 P D7 D8D9P D10 D11 D12PD13 D14 D15 PD16D17 D18 D19 D20D21D22 D23 P Disk Columns Increasing Logical Disk Addresses Example: write to D0, D5 uses disks 0, 1, 3, 4

CS Problems of Disk Arrays: Small Writes D0D1D2 D3 P D0' + + D1D2 D3 P' new data old data old parity XOR (1. Read) (2. Read) (3. Write) (4. Write) RAID-5: Small-Write Algorithm 1 Logical Write = 2 Physical Reads + 2 Physical Writes

CS RAID 6: Recovering From 2 Failures Why > 1 failure recovery? –Operator accidentally replaces wrong disk during failure –Since disk bandwidth is growing more slowly than capacity, 1- disk MTTR increasing in RAID systems »Increases chance of 2nd failure during repair –Reading more data during reconstruction means increasing chance of (second) uncorrectable media failure »Would result in data loss

CS RAID 6: Recovering From 2 Failures Network Appliance’s row diagonal parity (RAID- DP) Still uses per-stripe parity –Needs two check blocks per stripe to handle double failure –If p+1 disks total, p-1 disks have data; assume p=5 Row-parity disk just like in RAID 4 –Even parity across other 4 data blocks in stripe Each block of diagonal parity disk contains even parity of blocks in same diagonal

CS Example (p = 5) Starts by recovering one of the 4 blocks on the failed disk using diagonal parity –Since each diagonal misses one disk, and all diagonals miss a different disk, 2 diagonals are only missing 1 block Once those blocks are recovered, standard scheme recovers two more blocks in standard RAID-4 stripes Process continues until two failed disks are fully restored Data Disk 0 Data Disk 1 Data Disk 2 Data Disk 3 Row Parity Diagona l Parity ……………… ………………

CS Berkeley History: RAID-I RAID-I (1989) –Consisted of Sun 4/280 workstation with 128 MB of DRAM, four dual-string SCSI controllers, inch SCSI disks and specialized disk striping software Today RAID is $24 billion dollar industry, 80% non-PC disks sold in RAIDs

CS Summary: Goal Was Performance, Popularity Due to Reliability Disk mirroring (RAID 1) –Each disk fully duplicated onto “shadow” –Logical write = two physical writes –100% capacity overhead Parity bandwidth array (RAID 3) –Parity computed horizontally –Logically a single high-BW disk High I/O-rate array (RAID 5) –Interleaved parity blocks –Independent reads & writes –Logical write = 2 reads + 2 writes

CS Definitions Precise definitions are important for reliability Is a programming mistake a fault, an error, or a failure? –Are we talking about when the program was designed or when it is run? –If the running program doesn’t exercise the mistake, is it still a fault/error/failure? If alpha particle hits DRAM cell, is it fault/error/failure if value doesn’t change? –How about if nobody accesses the changed bit? –Did fault/error/failure still occur if memory had error correction and delivered corrected value to CPU?

CS IFIP Standard Terminology Computer system dependability: quality of delivered service such that we can rely on it Service: observed actual behavior seen by other system(s) interacting with this one’s users Each module has ideal specified behavior –Service specification: agreed description of expected behavior

CS IFIP Standard Terminology (cont’d) System failure: occurs when actual behavior deviates from specified behavior Failure caused by error, a defect in a module Cause of an error is a fault When fault occurs it creates latent error, which becomes effective when it is activated Failure is when error affects delivered service –Time from error to failure is error latency

CS Fault v. (Latent) Error v. Failure Error is manifestation in the system of a fault, failure is manifestation on the service of an error If alpha particle hits DRAM cell, is it fault/error/failure if it doesn’t change the value? –How about if nobody accesses the changed bit? –Did fault/error/failure still occur if memory had error correction and delivered corrected value to CPU? Alpha particle hitting DRAM can be a fault If it changes memory, it creates an error Error remains latent until affected memory is read If error affects delivered service, a failure occurs

CS Fault Categories 1.Hardware faults: Devices that fail, such alpha particle hitting a memory cell 2.Design faults: Faults in software (usually) and hardware design (occasionally) 3.Operation faults: Mistakes by operations and maintenance personnel 4.Environmental faults: Fire, flood, earthquake, power failure, and sabotage

CS Faults Categorized by Duration 1.Transient faults exist for a limited time and don’t recur 2.Intermittent faults cause system to oscillate between faulty and fault-free operation 3.Permanent faults don’t correct themselves over time

CS Fault Tolerance vs Disaster Tolerance Fault Tolerance (or more properly, Error Tolerance): mask local faults (prevent errors from becoming failures) –RAID disks –Uninterruptible Power Supplies –Cluster failover Disaster Tolerance: masks site errors (prevent site errors from causing service failures) –Protects against fire, flood, sabotage,.. –Redundant system and service at remote site –Use design diversity

CS Case Studies - Tandem Trends Reported MTTF by Component SOFTWARE Years HARDWARE Years MAINTENANCE Years OPERATIONS Years ENVIRONMENT Years SYSTEM82021Years Problem: Systematic Under-reporting From Jim Gray’s “Talk at UC Berkeley on Fault Tolerance " 11/9/00

CS Is Maintenance the Key? Rule of Thumb: Maintenance 10X HW –so over 5 year product life, ~ 95% of cost is maintenance VAX crashes ’85, ’93 [Murp95]; extrap. to ’01 Sys. Mgt.: N crashes/problem ⇒ sysadmin action –Actions: set params bad, bad config, bad app install HW/OS 70% in ’85 to 28% in ’93. In ’01, 10%?

CS HW Failures in Real Systems: Tertiary Disks Cluster of 20 PCs in seven racks, running FreeBSD 96 MB DRAM each GB, 7200 RPM, 3.5-inch IBM disks 100 Mbps switched Ethernet

CS Does Hardware Fail Fast? 4 of 384 Disks That Failed in Tertiary Disk

CS High-Availability System Classes Goal: Build Class-6 Systems Availability 90.% 99.% 99.9% 99.99% % % % System Type Unmanaged Managed Well Managed Fault Tolerant High-Availability Very-High-Availability Ultra-Availability Unavailable (min/year) 50,000 5, Availability Class Unavailability = MTTR/MTBF can cut in half by cutting MTTR or MTBF From Jim Gray’s “Talk at UC Berkeley on Fault Tolerance " 11/9/00

CS How Realistic is "5 Nines"? HP claims HP-9000 server HW and HP-UX OS can deliver % availability guarantee “in certain pre-defined, pre-tested customer environments” –Application faults? –Operator faults? –Environmental faults? Collocation sites (lots of computers in 1 building on Internet) have –1 network outage per year (~1 day) –1 power failure per year (~1 day) Microsoft Network unavailable recently for a day due to problem in Domain Name Server –If only outage in year, 99.7% or 2 Nines