storage 2: raid learning objectives – to understand the technology drivers leading to raid arrays...
Post on 16-Dec-2015
223 Views
Preview:
TRANSCRIPT
Storage 2: RAID
• Learning Objectives– To understand the technology drivers leading to
RAID arrays– To understand the principles of common RAID
configurations– To understand performance and reliability
consequences of common RAID configurations– To understand the limitations of RAID failure
mode operation and recovery
Technology Trends
• 1980: Hard disk state of art: 1Gbytes in 14” removable drive
• 1980’s – most PCs used floppy disks• 1990’s – most PCs used hard disks• over 1 decade, hard disk sales volumes increased
x100• First effect: price reduction• Second effect: PCs became drivers of disk
technology
1985-1995 (approx)
• Two distinct markets for disk drives:– Mainframe/minicomputer/servers– (14 inch, high capacity, expensive)– PC – (8 inch to 5.25 inch to 3.5 inch; lower capacity,
cheap(er))
• “How do we build server-class storage using PC-class components?”
RAID in c.1990
• PC disks are small => use lots of them• PC disks are unreliable – how can we use lots to
increase reliability• Clue is in the “R” – “Redundant”• Use “Redundancy” to provide some error
immunity• We’ve already seen this in “Disk Mirroring” – see
Storage 1• What else can we do?
A Diversion into Marketing
• 1985:• Redundant• Array• of• Inexpensive• Disks
A Diversion into Marketing
• 2010:• Redundant• Array• of• Inexpensive XXXXXX Individual• Disks
• Don’t expect “inexpensive”!!!
RAID 0
• Striping – (as per previous lecture)
All images © Colin M.L. Burnett
RAID 1
• Mirroring– (as in previous lecture)
RAID 2
• (Bitwise) Hamming Code – not widely used
RAID 3
• Striping of sub-blocks, with parity• Can operate correctly with signalled errors
RAID 4
• Striping of blocks, with parity
• Performance issue:1-block write needsR-M-W
RAID 5
• Parity is distributed across multiple drives• Distributes R-M-W
RAID 6
• Multiple Redundancy
On Failure – An Entire Disk• (RAID 2-6)• Operate in degraded mode (every OS read needs
to read every disk)
• Replace drive (hot-swap?)
• Rebuild array – how long?– Sequentially– On live system?
• Failure during rebuild?
Where to Implement RAID?
a) in OS
b) in Device Interface (RAID controller)– OS-independent– but how to provide User Interface?
For Next Time
• Does RAID implemented on disk controller suggest ways of building better systems?
• For the larger scale systems…
top related