Tuesday, May 27, 2014

"MAID" using 2.5 in drives

What would a current attempt at MAID look like with 2.5" drives?

"MAID", Massive Array of Idle Disks, was an attempt by Copan Systems (bought by SGI in 2009) at near-line Bulk Storage. It had a novel design innovation, mounting drives vertically back-to-back in slide-out canisters (patented), and was based on an interesting design principle: off-line storage can mostly be powered down.

It was a credible attempt, coming out of The Internet Archive, and their "Petabox" (a more technical view and on Wikipedia).  At 24 x 3.5" drives per 4RU, they contain around half the 45 drives of the Backblaze 4.0 Storage Pod. The Petabox has 10Gbps uplinks and much beefier CPU's and more DRAM.

The Xyratex ClusterStor (now Seagate) offers another benchmark: their Scalable Storage Unit (SSU) stores 3 rows of 14 drives in 2.5RU x 450mm slide-out draws, allowing hot-plug access to all drives. Two SSU's comprise a single 5RU unit of 84 drives, with up to 14 SSU's per rack for 1176 drives per rack, an average of 28 x 3.5" drives per Rack Unit.

Sunday, May 04, 2014

RAID-0 and RAID-3/4 Spares

This piece is not based on an exhaustive search of the literature. It addresses a problem that doesn't seem to have been addressed as RAID-0 and the related RAID-3/4, a single parity drive.

Single parity drives seem to be deemed early on to be impractical because it apparently comprises a deliberate system bottleneck. RAID-3/4 has no bottleneck for streaming reads/writes and for writes, performance becomes, not approaches, the raw write performance of the array is available, identical to RAID-0 (stripe). For random writes, the 100-150 times speed differential between sequential and random access of modern drives can be leveraged with a suitable buffer to remove the bottleneck. The larger the buffer, the more likely the pre-read of data, to save to calculate the new parity, won't be needed. This triples the array throughput by avoiding the full revolution forced by the read/write-back cycle.

Multiple copies of the parity drive (RAID-1) can be kept to mitigate against the very costly failure of a parity drive: all blocks on every drive must be reread to recreate a failed parity drive. For large RAID groups and the very low price of small drives, this is not expensive.

With the availability of affordable, large SSD's, naive management of a single parity drive also removes the bottleneck for quite large RAID groups. The SSD can be backed by a log-structured recovery drive, trading on-line random IO performance for rebuild time.

Designing Local and/or Global Spares for large (N=64..512) RAID sets is necessary to reduce overhead, improve reconstruction times and avoid unnecessary partitioning, limiting recovery options and causing avoidable data loss events.

Saturday, May 03, 2014

Comparing consumer drives in small-systems RAID

This stems from an email conversation with a friend: why would he be interested in using 2.5" drives in RAID, not 3.5"?

There are two key questions for Admins at this scale, and my friend was exceedingly sceptical of my suggestion:
  • Cost/GB
  • 'performance' of 2.5" 5400RPM drives vs 7200RPM drives.
I've used retail pricing for the comparisons. Pricelist and sorted pricelist.

Retail Disk Prices, as printed

Table of current retail prices for various types of disk with cost-per-GB.

Disclaimer: This table is for my own point-in-time reference, does not carry any implicit or explicit recommendations or endorsement for the retailer, vendor or technologies.

Retail disk prices, sorted.

Table of current retail prices for various types of disk, sorted on cost-per-GB.
Disclaimer: This table is for my own point-in-time reference, does not carry any implicit or explicit recommendations or endorsement for the retailer, vendor or technologies.

3.5" Internal drives are the cheapest $/GB, ranging from 4.3 cents/GB to 10-11 cents/GB. Generally, larger drives have cheaper $/GB. Higher spec drives, suitable for high duty-cycle applications, are more expensive. This retailer doesn't sell 10K or SAS drives.

It's not possible to track 3.5" drives from Internal to External to arrive at a cost of packaging.

2.5" Internal drives range 8 to 16.5 cents/GB, generally higher than 3.5" drive costs. There seems to be little extra cost of packaging for external drives. There is a small premium in consumer drives for 7200RPM. This retailer only sells 2TB drives (15mm vs 9.5mm?) as external drives.

There was no information in the retailers rather compact format on the thickness (5mm, 7mm, 9.5mm, 12.5mm, 15mm) of 2.5" drives.

Solid State Disks are 5+ times more expensive than Hard Disk Drives, at 59 cents/GB to $1.37/GB.
The smaller mSATA drives start at 72.8 cents/GB.
No supplier information on SSD specs are included: SLC/MLC, transfer rates, IO/sec and number of write cycles. SSD's are very sensitive to wear and device selection requires very careful reading of device specifications.


01-May-2014
http://www.msy.com.au/Parts/PARTS.pdf

F-FacTypDskConnRPMBrand/ModelCapCost$/GBGB

3.5"IntHDDSATA37200?WD Green EZRX3TB1290.04303000GB
3.5"IntHDDSATA37200?Seagate3TB1290.04303000GB
3.5"IntHDDSATA37200?WD Green EZRX4TB1850.04624000GB
3.5"IntHDDSATA37200?Seagate4TB1890.04734000GB
3.5"IntHDDSATA37200?WD Green EZRX2TB950.04752000GB
3.5"IntHDDSATA37200?Seagate2TB950.04752000GB
3.5"IntHDDSATA37200?Seagate NAS3TB1600.05333000GB
3.5"IntHDDSATA37200?WD Red NAS EFRX3TB1650.05503000GB
3.5"IntHDDSATA37200?Seagate NAS4TB2290.05734000GB
3.5"IntHDDSATA37200?WD Red NAS EFRX4TB2350.05874000GB
3.5"IntHDDSATA37200?WD Purple PURX Surveillance3TB1790.05973000GB
3.5"IntHDDSATA?7200?Hitachi HGST NAS3TB1790.05973000GB
3.5"IntHDDSATA?7200?Hitachi HGST NAS4TB2490.06224000GB
3.5"IntHDDSATA37200?Seagate NAS2TB1250.06252000GB
3.5"IntHDDSATA37200?WD Green EZRX1TB640.06401000GB
3.5"IntHDDSATA37200?WD Red NAS EFRX2TB1290.06452000GB
3.5"IntHDDSATA37200?WD Purple PURX Surveillance4TB2590.06484000GB
3.5"IntHDDSATA37200?Seagate1TB650.06501000GB
3.5"IntHDDSATA37200?WD Purple PURX Surveillance2TB1350.06752000GB
3.5"IntHDDSATA37200?WD Red NAS EFRX1TB890.08901000GB
3.5"IntHDDSATA27200?Hitachi HGST UltraStar1TB890.08901000GB
3.5"IntHDDSATA37200?Hitachi HGST3TB2700.09003000GB
3.5"IntHDDSATA37200?Hitachi HGST4TB3650.09124000GB
3.5"IntHDDSATA37200?Hitachi HGST2TB1850.09252000GB
3.5"IntHDDSATA37200?WD Purple PURX Surveillance1TB950.09501000GB
3.5"IntHDDSATA37200?Seagate500G550.1100500GB

3.5"ExtHDDUSB3.07200?WD Element3TB1290.04303000GB
3.5"ExtHDDUSB3.07200?Seagate Expansion3TB1390.04633000GB
3.5"ExtHDDUSB3.07200?Seagate Expansion2TB950.04752000GB
3.5"ExtHDDUSB3.07200?WD Mybook Essential3TB1490.04973000GB
3.5"ExtHDDUSB3.07200?WD Mybook Essential4TB2090.05224000GB
3.5"ExtHDDUSB3.07200?Seagate BackUp Plus3TB1590.05303000GB
3.5"ExtHDDUSB3.07200?Seagate BackUp Plus2TB1150.05752000GB
3.5"ExtHDDUSB3.07200?WD Mybook Essential2TB1390.06952000GB

2.5"IntHDDSATA?5400Hitachi HGST1TB800.08001000GB
2.5"IntHDDSATA?5400WD JPVX1TB830.08301000GB
2.5"IntHDDSATA?5400WD BPVX750G640.0853750GB
2.5"IntHDDSATA?5400Hitachi HGST750G660.0880750GB
2.5"IntHDDSATA?5400Hitachi HGST1.5TB1390.09271500GB
2.5"IntHDDSATA?7200Hitachi HGST1TB930.09301000GB
2.5"IntHDDSATA?7200WD BPKX750G780.1040750GB
2.5"IntHDDSATA?5400Hitachi HGST500G550.1100500GB
2.5"IntHDDSATA?5400Seagate500G560.1120500GB
2.5"IntHDDSATA?7200Hitachi HGST750G850.1133750GB
2.5"IntHDDSATA?5400WD LPVX500G570.1140500GB
2.5"IntHDDSATA?7200Hitachi HGST500G640.1280500GB
2.5"IntHDDSATA?7200Seagate500G640.1280500GB
2.5"IntHDDSATA?7200WD BPKX500G670.1340500GB
2.5"IntHDDSATA?5400Hitachi HGST320G530.1656320GB
2.5"IntHDDSATA?5400WD LPVX320G530.1656320GB
2.5"IntHDDSATA?5400Seagate320G530.1656320GB

2.5"ExtHDDUSB3.05400?WD Element2TB1490.07452000GB
2.5"ExtHDDUSB3.05400?Samsung2TB1490.07452000GB
2.5"ExtHDDUSB3.05400?Samsung1.5TB1150.07671500GB
2.5"ExtHDDUSB3.05400?WD Passport2TB1590.07952000GB
2.5"ExtHDDUSB?.05400?Hitachi HGST Touro Mobile1TB800.08001000GB
2.5"ExtHDDUSB3.05400?WD Passport Ultra2TB1650.08252000GB
2.5"ExtHDDUSB3.05400?WD Passport1.5TB1290.08601500GB
2.5"ExtHDDUSB3.05400?Samsung1TB860.08601000GB
2.5"ExtHDDUSB3.05400?WD Element1TB890.08901000GB
2.5"ExtHDDUSB3.05400?WD Passport1TB890.08901000GB
2.5"ExtHDDUSB?.05400?Hitachi HGST Touro Pro1TB920.09201000GB
2.5"ExtHDDUSB3.05400?Seagate BackUp Plus1TB990.09901000GB
2.5"ExtHDDUSB3.05400?WD Passport Ultra1TB1040.10401000GB
2.5"ExtHDDUSB?.05400?Hitachi HGST Touro Mobile500G560.1120500GB
2.5"ExtHDDUSB3.05400?Samsung500G620.1240500GB
2.5"ExtHDDUSB3.05400?Seagate Expansion500G690.1380500GB
2.5"ExtHDDUSB3.05400?WD Passport Ultra500G740.1480500GB
2.5"ExtHDDUSB3.05400?Seagate BackUp Plus500G880.1760500GB

2.5"IntSSDSATA3-Samsung 840 EVO1TB5890.58901000GB
2.5"IntSSDSATA?-SanDisk Ultra Plus256G1570.6133256GB
2.5"IntSSDSATA?-Seagate 600480G2990.6229480GB
2.5"IntSSDSATA?-Plextor M5-PRO512G3290.6426512GB
2.5"IntSSDSATA?-Plextor M5S256G1680.6562256GB
2.5"IntSSDSATA3-Samsung 840 EVO500G3290.6580500GB
2.5"IntSSDSATA?-Kingston V300240G1590.6625240GB
2.5"IntSSDSATA?-Seagate 600240G1590.6625240GB
2.5"IntSSDSATA?-Fujitsu256G1700.6641256GB
2.5"IntSSDSATA3-Samsung 840 EVO250G1700.6800250GB
2.5"IntSSDSATA?-Kingston V300480G3290.6854480GB
2.5"IntSSDSATA?-SanDisk Ultra Plus128G890.6953128GB
2.5"IntSSDSATA?-Plextor M5-PRO256G1790.6992256GB
2.5"IntSSDmSATA3-Samsung 840 EVO250G1820.7280250GB
2.5"IntSSDSATA?-Kingston V300120G880.7333120GB
2.5"IntSSDSATA?-Fujitsu512G3830.7480512GB
2.5"IntSSDSATA?-OCZ Vertec 450128G970.7578128GB
2.5"IntSSDSATA?-SanDisk Extreme240G1850.7708240GB
2.5"IntSSDSATA?-Fujitsu128G990.7734128GB
2.5"IntSSDSATA?-SanDisk Extreme II480G3790.7896480GB
2.5"IntSSDSATA3-Samsung 840 EVO120G950.7917120GB
2.5"IntSSDSATA?-SanDisk Extreme II240G1950.8125240GB
2.5"IntSSDSATA?-Seagate 600120G990.8250120GB
2.5"IntSSDSATA?-Kingston HyperX240G1990.8292240GB
2.5"IntSSDSATA3-Samsung 840 PRO512G4390.8574512GB
2.5"IntSSDSATA?-Intel 520120G1040.8667120GB
2.5"IntSSDSATA?-Intel 530240G2090.8708240GB
2.5"IntSSDSATA?-Kingston HyperX120G1050.8750120GB
2.5"IntSSDmSATA3-Samsung 840 EVO120G1050.8750120GB
2.5"IntSSDSATA3-Samsung 840 PRO256G2320.9062256GB
2.5"IntSSDSATA?-Intel 530120G1150.9583120GB
2.5"IntSSDSATA?-SanDisk Extreme II120G1180.9833120GB
2.5"IntSSDSATA?-Kingston SMS200s3120G1190.9917120GB
2.5"IntSSDmSATA3-Intel 530240G2421.0083240GB
2.5"IntSSDSATA?-Intel 530180G1841.0222180GB
2.5"IntSSDSATA?-Plextor M5-PRO128G1351.0547128GB
2.5"IntSSDSATA?-Fujitsu64G691.078164GB
2.5"IntSSDSATA3-Samsung 840 PRO128G1381.0781128GB
2.5"IntSSDSATA?-Kingston V30060G651.083360GB
2.5"IntSSDmSATA3-Intel 530120G1301.0833120GB
2.5"IntSSDmSATA3-Intel 525120G1391.1583120GB
2.5"IntSSDSATA?-SanDisk Ultra Plus64G751.171964GB
2.5"IntSSDSATA?-Intel 730240G2851.1875240GB
2.5"IntSSDSATA?-Intel S3500240G2881.2000240GB
2.5"IntSSDSATA?-Kingston SMS200s360G761.266760GB
2.5"IntSSDSATA?-Intel S3500160G2091.3062160GB
2.5"IntSSDSATA?-Intel S3500120G1641.3667120GB

2.5"IntSSHDSATA?5400?Seagate1TB1290.12901000GB
2.5"IntSSHDSATA?5400?Seagate500G850.1700500GB
Retail Disk Prices