Where are the High-Capacity SCSI Drives?
An anonymous reader asks: "Storage technology has really exploded in recent years, giving us ATA drives up to and exceeding 200-250 GB per drive. Why is it that SCSI drive technology has remained stagnant? I can't find a SCSI drive exceeding about a 146 GB capacity. Instead, businesses (and some individuals) wanting greater storage capacities are required to buy more drives which takes up more space, generates more heat, provides more points of failure, uses more electricity, etc. Why is this so?"
Check out the MTBF numbers. They look similar until you see that desktop drives are rated with a low duty cycle - the typical 8 hour day as opposed to the 24 hour day servers are deigned to run.
As for real performance, my old 18G 7200 RPM IBM scsi drives are faster than my brand-new SATA raptors in real world applications (compiling the linux kernel for example.)
So here's what I do. I use my scsi drives for my everyday stuff, and archive on the SATA drives (MP3's, old source / packages, etc.) That way I get my performance and reliability, and space. Since I have two of each, I just raid mirror.
As for real world server applications, we run some Large raid arrays. We don't need the space as much as we need the performance you get with dozens of spindles spread over multiple channels on 64bit controllers.
This info is from an IBM Magnetic Storage Engineer. The reason is that the IDE market is a retail home market and very competitive. He said "If an IDE manufacturer can save 5 cents on a component he'll buy the cheaper one". The time from R and D to store shelf is less than a year. For SCSI drives on the other hand are primarily for servers and they have expensive components and are tested for a long time before they reach the market. The time from R and D to store shelf is about three years for SCSI. what was the bigest drive you could buy three years ago (ide)? Thats right about the same size as the biggest SCSI drive today. So ... what does this mean? IDE drives suck, they are cheap they are the zip lock bag of the storage industry. If you are going to grandmas with your data thats ok but if its going to the moon... buy tupperware, (SCSI).
Hitachi/IBM produce the 300GB UltraStar 10K300, which is a mighty drive if I've ever seen one.
The real reason is that when you move up to higher rotational sppeds to reduce latency, you have to reduce density relative to the motion of the disk under the head, so a 10K drive can generally pack only 60%-ish as much data per-inch as a 7200RPM drive.
The same can be seen in 15K disks, which are much lower density than their 10K counterparts. The 15K platters are smaller too, to keep them from flying apart.
Do you remember when the 5400RPM disks had higher capacity than the 7200 ones? I sure do, it was for the same reason.
Until the latency of the read-write head improves this will be the case.
"Sometimes, I think Trent just needs a cup of hot chocolate and a blankie." -Tori Amos on Nine Inch Nails
RAID is a wonderful concept, but work needs to be on points of failure other than the drives.
Most decent external RAID units today have dual hot-swappable dual power supplies and fans. However there is still only a single backplane and RAID controller board (IBM PowerPC chips are very popular for this) involved. I've both a backplane and controller a fail on me in the span of 2 years, in both cases taking all the data with them. These units were 6x200GB IDE drives, 1TB usable, 1 parity drive, and we had several cold spares available to hot-swap in on a failure.
Sure I agree that statistcally your drives, fans and power supplies are much more likely to fail than the backplane or controller, but it can still happen.
Never forget the important of having backups, and make sure you can recover from them as part of implementing your backup solution. (1 month rotation of Ultrium tapes here).
There is a solution to the above, but it's very costly, and that's RAID over distributed storage (iSCSI and the like).
ICQ# : 30269588
"I used to be an idealist, but I got mugged by reality."
I think it is more likely that high rotation speed doesn't combine easily with high capacity. If you are spinning the disks more than twice as quickly as standard ATA drives (15k vs. 7200 rpm), then having the same data storage density isn't going to work without new technological developments. In other words, when the disk reading head moves at twice the speed, the bits need to be roughly twice as large. This is why the first CD drives didn't read at 52x: they needed time to develop the technology that allows the reading of that data density at that high of a speed.
I'm not familiar with which mathematical formula is involved, but from this perspective, 150 gb scsi drives operating at twice the speed seems reasonable compared to 300 gb ata drives. I suspect a similar reason is responsible for the low capacity of the 10k WD Raptors (serial ata drives) which have capacities of only 36 or 72 gb!
Alphanos
Agreed, I've said this before, but my old 18GB Ultra2Wide (80MB/sec SCSI) drive can wipe the floor with my new DeskStar 180GXP (ATA-100).
It's all about those command queues, they let the computer spit commands at the disk without having to see their immediate completion.
I actually get better performance with my SCSI drive _mounted over NFS_ than I can with my previous local 40GB ATA-66 drive.
"Sometimes, I think Trent just needs a cup of hot chocolate and a blankie." -Tori Amos on Nine Inch Nails
Drive speeds haven't really gone up tremendously. Still too slow.
;) ).
Imagine you have a 1TB drive, but were stuck at a 100MB/sec max seq transfer rate. It takes you 2.7 hours to read/write the entire drive. And that's for _sequential_ access. Gets ugly for random seek.
A similar speed 10TB drive will take you more than a day (27+ hours) to read sequentially.
Before the point where it takes too long to read an entire single drive you might as well start using multiple drives to add capacity rather than having bigger drives.
Taking too long is subjective, but I'd say this: how long can you make your boss/customer wait whilst you are restoring an entire disk image from backup? 27 hours or 2.7 hours? or 25 minutes?
So 70GB would be about the limit if you have impatient users and bosses.
Larger capacities are OK if they are to hold data that aren't important enough to be backed up, and don't require masses of data to be available quickly. Or you are doing mirroring and read speeds are important but write speeds aren't as important (but remember that restoring from backup = writing
IDE sucks the life out of PC, even newer 3ghz+ pc's still pause when you put in a floppy or eject a cdrom in windows.
That's a drive and/or Windows issue. When you insert a CD, the CDROM has to spin it up to read it, and then Explorer.exe (not Internet Explorer, Windows Explorer, A.K.A. the Windows "shell") immediately wants to know what's in it, so you have a slight lag, depending on background services, the drive, the media condition, etc. You can see what's going on by opening up Explorer while there's no CD in the drive, then watching the drive's reaction, and Explorer's reaction when the drive finally reads the CD.
Some performance can be gained by keeping CDROM drives on seperate IDE devices to prevent the CD drive from hogging the bus during moderate to heavy harddisk activity. As for floppy drives... you still use a floppy drive?!
Higher-end controller cards (read: NOT IDE) can share a bus with another controller, allowing two systems (with a controller in each) to share access to a single (external) array, with dual power supplies, and technologies like SSA allow even the cabling to be redundant.
Of course, by the time you spent the money on this type of setup, you could probably have purchased another complete machine, with another array in it, and used software to handle redundancy and updates to the array. We did this with our SQL server setup. We have two machines with redundant power supplies and RAID-10 arrays, setup in a load-balancing cluster with one as an updating subscriber to the other (updates are sent between the machines real-time, losing about 10% on write performance, but doubling read performance). If you share the array between machines, you will save the 10% or so on write performance, but won't gain the read performance, so it all depends on your primary usage for the storage system. Of course, you can't completely avoid downtime (something WILL happen eventually), but by having a separate system, you can reduce the chances of having downtime, and reduce the length (since only one has to be up).
--That's the point of being root, you can do anything you want, even if it's stupid.
1. No Longer True.
This has, in large part, disappeared with the advent of UDMA. It was true that IDE was very cycle expensive a decade ago when the IDE really meant Internal Disk Eletronics. The IDE "interface" was just a set of tri-state latches and the CPU would be responsible for pushing and reading every single byte. If you ever look at the pinout for an IDE cable, it's no surprise that it very closely resembles the ISA bus. Another historical note, ATA means AT-Attachment because the first set of IDE drives that were really popular were designed to attach to the IBM PC AT (the successor of sorts to the IBM PC XT) bus.
Now, processors queue dma requests in and out of the drive and the "interface" really has grown up to be more of a "controller." They're not as complex as the SCSI adapters, of course, but then again, SCSI is a much more complex signaling system.
2. No Longer True.
What you're trying to describe is called as "bus disconnect." I'm not sure which side of the bus was responsible, however, the idea is that while a drive was processing a command, the bus was locked until the command finished.
Note, the first version of SCSI did not have Disconnect either. However, given many more devices sharing the bus, bus contention was more severe, especially using slow devices like tape drives and cdroms, that it became necessary rather than just a feature.
SCSI supports disconnection as well as Tagged Command Queueing. TCQ allows the host to issue multiple outstanding commands to the device. The device is allowed to complete these commands out of order. Many drives will reorder the requests to take advantage of the head movement.
Recent revisions of IDE include support for TCQ.
I will add, however, that it is still worthwhile to have only one device per channel. Compare this to putting more than two 15K drives on a U160 channel.
3. Not even remotely true. SCSI is a parralel bus, much like IDE, ISA, or half a dozen others. Its only possible for one device to drive the bus at one time. This is clearly evident since a few of the lines in the SCSI cable are used to indicate the Target of the bus transaction. There is only one set of these signals, therefore, there can only be one target.
Also, the electrical interface for Serial ATA is designed with hot-swap in mind.
While your first suggestion is accurate, disk i/o is very slow and SCSI equipment tends to be of better quality than IDE hardware. SCSI drives with higher spindle speeds have much lower latency, which can lend a dramatic difference to a similar computer with IDE drives. However, that difference is of no fault of IDE. I would encourage, you, in future to be more accurate with your information.
If you believe I have written inaccurately, I would recommend reading the draft documents from INCITS T13, the ATA technical comittee.
fnord.
I will try to avoid the SCSI vs IDE flame war.
1) RPM. It is easier to spin a 2.5" platter at 15K than a 3.5" platter. (someone else can figure out the addtional energy but I would guess more than double the juice adduming uniform density.)
2) IOs per second. In large arrays the driving factor is not necessaraly throughput but IOs per second. Which leads to more transactions per second for your server farm. So more spindles = more IOs per second.
3) Access time. The bigger the drive the longer it takes the drive's processor to position the head. Therefore increasing access times. decreasing IO per second. I now its a trivial amount of time but it adds up over millions of IO.
4) Error correction. I cannot speak for IDE but each block on a SCSI drive has an Error Correction Code (ECC) which helps the drive recover from read errors. Again minimal.
5) Cynical answer. Smaller drives means your drive company sells more product to meet a given capacity.
educational point. SCSI is a protocol like IP or TCP. It can be tunneled through or carried by anything.
SPI -SCSI Parralel interface (old school).
FCP - Fibre channel protocol
SAS - Serial attached SCSI. SAS can also tunnel SATA.
iSCSI - scsi in TCP. (not ethernet)
SBP - SCSI Block Protocol. firewire.
ATAPI - yep SCSI ove IDE so your CDROM works.
many others.