Storage 101
Less than a year ago, October 29th 2013, Cisco acquired Whiptail , a high performance scalable solid-state memory system. Shortly after its acquisition, the product lines were renamed UCS Invicta.
The idea behind UCS Invicta and its market positioning is application acceleration. This is not to be considered a traditional storage but instead a solution to enhance application performance. In fact, Cisco has made it quite clear that they have no plan to target the traditional storage market:
“This acquisition is really about the server market. It’s a significant opportunity, but distinct from the portion of the market served by traditional stand-alone storage systems. As a result, our continued engagements with NetApp on FlexPod, EMC on VSPEX and VCE on Vblock will not change. We have no current plans to expand into the broad based, traditional storage market.”
Now, just as it happened in 1998 when Cisco got into the VoIP market, and then in 2009 when it got into the server market, we need to learn a new lingo and we need to understand the pains of that market.
In this blog series, I’ll be covering some of the lingo, highlighting some of the pains the users have and describing what UCS Invicta brings to the table.
Hard Disk Drives (HDD)
Lets start with the basics: the parts of the traditional hard disk drives (HDD):
- Platter: circular disk on which data is stored
- Spindle: piece that holds the platters. Among storage administrators, this term is also used to refer to a mechanical drive (HDD) as a whole.
- Actuator arm: moves the heads across the platters as they spin positioning them over the correct track
- Head: at a clearance of about 3 nanometers of the disk surface, transform the platter’s magnetic field into electrical current (read the disk) or transform electrical current into magnetic field (write the disk).
- Track: a circular path on the surface of a disk
- Disk Sector: one of the “pie slices” of a platter in a magnetic disk
- Track Sector: a subdivision of a track in a magnetic disk
HDD are mechanical drives and as such we have certain operations that cause latency during a read or write operation. Among those, the most common mechanical factors affecting latency are the “seek time” and the “rotational latency”.
The “seek time” is the time is the time it takes for the actuator arm to move the head across the platter to the correct track
The “rotational latency” is the time for the rotation of the platter to the correct sector.
Most of the time, when we speak about “enterprise” HDDs we are referring to drives with “faster” actuators, more resistant spindles, higher durability of the components, among other things.
Overtime the industry have develop many ways to improve HDD performance. A common technique to reduce the “seek time” is “short stroking”. Basically, with “short stroking” we use the outer tracks of the disk drives to limit the movement of the head over the platters. Obviously, this also means we significantly reduce the usable capacity of the HDD. In fact, we might end up with an effective capacity of 33% of the original capacity. The benefit of this trade is that it will drastically reduce the seek time.
There are other factors that amplify the “seek time” in a HDD. Remember disk fragmentation? Nowadays, most of the modern OSes will run defragmentation routines in the background, but that was not always the case.
Lets refresh our memory, or let’s explain fragmentation for those young enough that missed all the fun.
Fragmentation happens over time, as we modify existing files or we increase space HDD utilization, files get split between blocks that are far away, in different tracks, and so on. When we read those files, the head has to jump all over the platters retrieving the information, but each time it gets to another track, we get hit by the rotational latency. Well, you get the picture.
Among the approaches working around the “rotational latency” have two main ones: decreasing the size of the drives and/or increasing the amount of revolutions per minute (RPM). This approach last approach has hit multiple barriers and we pretty much have 15,000 RPMs as the predominant max RPMs since 2000.
A quick search reveals that among those barriers we have: high power consumption, “turbulence” caused by the actuator arms make very difficult maintain stability of the head, vibration and most importantly cost.
Some manufacturers have created 18,000 RPMs drives but most have failed to gain traction because of pricing, power consumption and low tolerance to vibration.
{http://en.wikipedia.org/wiki/Hard_disk_drive}
{http://www.pcworld.com/article/127105/article.html}
{http://www.brightsideofnews.com/2012/09/18/history-of-hard-drives/}
RPMs | Average Latency (ms) | Year |
1,200 |
1956 |
|
5,400 |
5.55 |
|
7,200 |
4.16 |
1992 |
10,000 |
3 |
1996 |
15,000 |
2 |
2000 |
Another technique used by manufacturers is the use of disk level cache to hide the actual latency. Disk drive level cache work well until your workload fills them, after that, your performance is back to whatever the actual drive can achieve.
In part 2 of this series we took a look into the internals of SSDs.
Great post William!