CS161: Operating Systems



Similar documents
Lecture 36: Chapter 6

How To Improve Performance On A Single Chip Computer

Definition of RAID Levels

Reliability and Fault Tolerance in Storage

RAID Level Descriptions. RAID 0 (Striping)

CS 6290 I/O and Storage. Milos Prvulovic

PIONEER RESEARCH & DEVELOPMENT GROUP

Input / Ouput devices. I/O Chapter 8. Goals & Constraints. Measures of Performance. Anatomy of a Disk Drive. Introduction - 8.1

RAID Overview: Identifying What RAID Levels Best Meet Customer Needs. Diamond Series RAID Storage Array

technology brief RAID Levels March 1997 Introduction Characteristics of RAID Levels

Summer Student Project Report

Price/performance Modern Memory Hierarchy

1 Storage Devices Summary

CS 153 Design of Operating Systems Spring 2015

RAID Storage, Network File Systems, and DropBox

Storing Data: Disks and Files

Reliability of Systems and Components

Striped Set, Advantages and Disadvantages of Using RAID

Introduction Disks RAID Tertiary storage. Mass Storage. CMSC 412, University of Maryland. Guest lecturer: David Hovemeyer.

Storage. The text highlighted in green in these slides contain external hyperlinks. 1 / 14

RAID HARDWARE. On board SATA RAID controller. RAID drive caddy (hot swappable) SATA RAID controller card. Anne Watson 1

CS420: Operating Systems

W4118: RAID. Instructor: Junfeng Yang

Chapter 6 External Memory. Dr. Mohamed H. Al-Meer

Solving Data Loss in Massive Storage Systems Jason Resch Cleversafe

File System Design and Implementation

Operating Systems. RAID Redundant Array of Independent Disks. Submitted by Ankur Niyogi 2003EE20367

SSDs and RAID: What s the right strategy. Paul Goodwin VP Product Development Avant Technology

RAID Overview

Introduction. What is RAID? The Array and RAID Controller Concept. Click here to print this article. Re-Printed From SLCentral

Outline. Database Management and Tuning. Overview. Hardware Tuning. Johann Gamper. Unit 12

Why disk arrays? CPUs speeds increase faster than disks. - Time won t really help workloads where disk in bottleneck

What is RAID? data reliability with performance

RAID. Storage-centric computing, cloud computing. Benefits:

Why disk arrays? CPUs improving faster than disks

Disk Array Data Organizations and RAID

Block1. Block2. Block3. Block3 Striping

RAID. Contents. Definition and Use of the Different RAID Levels. The different RAID levels: Definition Cost / Efficiency Reliability Performance

RAID Technology Overview

An Introduction to RAID. Giovanni Stracquadanio

Chapter Introduction. Storage and Other I/O Topics. p. 570( 頁 585) Fig I/O devices can be characterized by. I/O bus connections

RAID Basics Training Guide

an analysis of RAID 5DP

CS 61C: Great Ideas in Computer Architecture. Dependability: Parity, RAID, ECC

RAID0.5: Active Data Replication for Low Cost Disk Array Data Protection

Sistemas Operativos: Input/Output Disks

Disks and RAID. Profs. Bracy and Van Renesse. based on slides by Prof. Sirer

What is RAID and how does it work?

RAID: Redundant Arrays of Independent Disks

Chapter 9: Peripheral Devices: Magnetic Disks

RAID. RAID 0 No redundancy ( AID?) Just stripe data over multiple disks But it does improve performance. Chapter 6 Storage and Other I/O Topics 29

Storage Technologies - 2

VERY IMPORTANT NOTE! - RAID

CSE-E5430 Scalable Cloud Computing P Lecture 5

IBM ^ xseries ServeRAID Technology

Dependable Systems. 9. Redundant arrays of. Prof. Dr. Miroslaw Malek. Wintersemester 2004/05

How to choose the right RAID for your Dedicated Server

3PAR Fast RAID: High Performance Without Compromise

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters

NVIDIA RAID Installation Guide

RAID 5 rebuild performance in ProLiant

RAID Implementation for StorSimple Storage Management Appliance

Using RAID6 for Advanced Data Protection

How To Write A Disk Array

Firebird and RAID. Choosing the right RAID configuration for Firebird. Paul Reeves IBPhoenix. mail:

How To Create A Multi Disk Raid

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

Hard Disk Drives and RAID

White Paper A New RAID Configuration for Rimage Professional 5410N and Producer IV Systems November 2012

Guide to SATA Hard Disks Installation and RAID Configuration

Today s Papers. RAID Basics (Two optional papers) Array Reliability. EECS 262a Advanced Topics in Computer Systems Lecture 4

Exercise 2 : checksums, RAID and erasure coding

DELL RAID PRIMER DELL PERC RAID CONTROLLERS. Joe H. Trickey III. Dell Storage RAID Product Marketing. John Seward. Dell Storage RAID Engineering

HARD DRIVE CHARACTERISTICS REFRESHER

CSE 120 Principles of Operating Systems

RAID technology and IBM TotalStorage NAS products

Best Practices RAID Implementations for Snap Servers and JBOD Expansion

HP Smart Array Controllers and basic RAID performance factors

CS 464/564 Introduction to Database Management System Instructor: Abdullah Mueen

RAID 6 with HP Advanced Data Guarding technology:

Guide to SATA Hard Disks Installation and RAID Configuration

Fault Tolerance & Reliability CDA Chapter 3 RAID & Sample Commercial FT Systems

RAID Made Easy By Jon L. Jacobi, PCWorld

Distributed Storage Networks and Computer Forensics

Review. Lecture 21: Reliable, High Performance Storage. Overview. Basic Disk & File System properties CSC 468 / CSC /23/2006

Data Storage - II: Efficient Usage & Errors

TECHNOLOGY BRIEF. Compaq RAID on a Chip Technology EXECUTIVE SUMMARY CONTENTS

Algorithms and Methods for Distributed Storage Networks 5 Raid-6 Encoding Christian Schindelhauer

Lecture 23: Multiprocessors

Flash for Databases. September 22, 2015 Peter Zaitsev Percona

Transcription:

CS161: Operating Systems Matt Welsh mdw@eecs.harvard.edu Lecture 18: RAID April 19, 2007 2007 Matt Welsh Harvard University 1

RAID Redundant Arrays of Inexpensive Disks Invented in 1986-1987 by David Patterson and Randy Katz, UC Berkeley Now a multibillion dollar a year industry 2007 Matt Welsh Harvard University 2

RAID Motivation Speed of disks not matching that of other components Moore's Law: CPU speed doubles every 18 months SRAM speeds increasing by 40-100% a year In contrast, disk seek time only improving 7% a year Although greater density leads to improved transfer times once seek is done Emergence of PCs starting to drive down costs of disks (This is 1988 after all) PC-class disks were smaller, cheaper, and only marginally slower www.ebu.ch/trev_294-editorial.html 2007 Matt Welsh Harvard University 3

RAID Motivation Basic idea: Build I/O systems as arrays of cheap disks Allow data to be striped across multiple disks Means you can read/write multiple disks in parallel greatly improve performance Problem: disks are extremely unreliable Mean Time to Failure (MTTF) MTTF (disk array) = MTTF (single disk) / # disks Adding more disks means that failures happen more frequently.. An array of 100 disks with an MTTF of 30,000 hours = just under 2 weeks! 2007 Matt Welsh Harvard University 4

Increasing Reliability Idea: Replicate data across multiple disks When a disk fails, lost information can be regenerated from the redundant data Simplest form: Mirroring (also called RAID 1 ) All data is mirrored across two disks Advantages? Disadvantages? 2007 Matt Welsh Harvard University 5

Increasing Reliability Idea: Replicate data across multiple disks When a disk fails, lost information can be regenerated from the redundant data Simplest form: Mirroring (also called RAID 1 ) All data is mirrored across two disks Advantages: Reads are faster, since both disks can be read in parallel Higher reliability (of course) Disadvantages: Writes are slightly slower, since OS must wait for both disks to do write This approach also doubles the cost of the storage system! 2007 Matt Welsh Harvard University 6

RAID 3 Rather than mirroring, use parity codes Given N bits {b 1, b 2,... b N }, the parity bit P is the bit {0,1} that yields an even number of 1 bits in the set {b 1, b 2,... b N, P} Idea: If any bit in {b 1, b 2,... b N } is lost, can use the remaining bits (plus P) to recover it. Where to store the parity codes? Add an extra check disk that stores parity bits for the data stored on the rest of the N disks Advantages: If a single disk fails, can easily recompute the lost data from the parity code Can use one parity disk for several data disks (reduces cost) Disadvantages: Each write to a block must update the corresponding parity block as well 2007 Matt Welsh Harvard University 7

RAID 3 Example 1 0 0 1 1 1 1 0 0 0 1 0 Disk 1 Disk 2 Disk 3 Disk 4 Check disk 1 0 0 1 0 2007 Matt Welsh Harvard University 8

RAID 3 Example 1 0 0 1 1 1 1 0 0 0 1 0 Disk 1 Disk 2 Disk 3 Disk 4 Check disk 1 1 0 1 0 1 1 0 0 1 0 0 1 0 1 2007 Matt Welsh Harvard University 9

RAID 3 Example 1 0 1 1 1 1 1 0 0 0 1 0 Disk 1 Disk 2 Disk 3 Disk 4 Check disk 1 1 0 1 01 1 1 0 01 1 0 0 1 0 1 2007 Matt Welsh Harvard University 10

RAID 3 Example Disk 1 Disk 2 Disk 3 Disk 4 Check disk 1 1 0 1 01 1 1 0 1 1 0 0 1 0 1 2007 Matt Welsh Harvard University 11

RAID 3 Example Disk 1 Disk 2 Disk 3 Disk 4 Check disk 1 1 0 1 01 1 1 0 1 1 0 0 1 0 1 1 0 1 1 1 1. Read back data from other disks 2. Recalculate lost data from parity code 3. Rebuild data on lost disk 2007 Matt Welsh Harvard University 12

RAID 3 Issues What is the MTTF of RAID? Both RAID 1 and RAID 3 tolerate the failure of a single disk As long as a second disk does not die while we are repairing the first failure, we are in good shape! So, what is the probability of a second disk failure? P(2 nd failure) = MTTR / (MTTF of one disk / # disks -1) This can be derived from independent and exponential failure rates See Patterson RAID paper for details 10 disks, MTTF (disk) = 1000 days, MTTR = 1 day P(2 nd failure) = 1 day / ( 1000 / 9 ) = 0.009 What is the performance of RAID 3? Well, the check disk must be updated each time there is a write Problem: The check disk is then a performance bottleneck Only a single read/write can be done at once on the whole system! 2007 Matt Welsh Harvard University 13

RAID 5 Another approach: Interleaved check blocks ( RAID 5 ) Rotate the assignment of data blocks and check blocks across disks Avoids the bottleneck of a single disk for storing check data Allows multiple reads/writes to occur in parallel (since different disks affected) Disk 1 Disk 2 Disk 3 Disk 4 Disk 5 1 0 0 1 0 1 1 1 1 0 0 0 1 0 1 Check blocks interleaved across disks 2007 Matt Welsh Harvard University 14

Atomic Write Failure Many applications perform update in place They change a file on disk by overwriting it with a new version What happens with RAID? 1 0 0 1 Disk 1 Disk 2 Disk 3 Disk 4 Check disk 10 01 01 10 0 2007 Matt Welsh Harvard University 15

Atomic Write Failure But is the complete write to all disks really atomic? Generally, no! 1 0 0 1 Disk 1 Disk 2 Disk 3 Disk 4 Check disk 10 01 01 1 0 2007 Matt Welsh Harvard University 16

Atomic Write Failure But is the complete write to all disks really atomic? Generally, no! What does this mean? Data can be left in an inconsistent state across the different disks! Really hard to recover from this. Problem: Most applications assume the storage system has atomic write semantics. Possible fixes? Use a journaling filesystem-like approach: Record changes to data objects transactionally. Requires extensive changes to filesystem sitting on top of the RAID. Battery-backed write cache: RAID controller remembers all writes in a battery-backed cache When recovery occurs, flush all writes out to the physical disks Doesn't solve the problem in general but gives you some insurance. 2007 Matt Welsh Harvard University 17