IDE, AHCI and RAID are all operating modes in SATA environments. Each has its relative strength and weakness.
IDE and AHCI are peripheral component interconnect (PCI) devices that move data between system memory and SATA controllers. Both add more advanced storage features. AHCI is newer than IDE, and enables more advanced storage features. However, both are older technologies that are not in widespread usage in storage arrays, especially with the growth of SSDs.
RAID is hardware or software that provides redundancy in multiple device environments, and accelerates HDDs. Like AHCI and IDE, RAID supports SATA controllers, and many RAID products enable AHCI upon installation to provide advanced storage features for single-disk applications.
In practice, the technologies are viewed as such:
- IDE is largely an obsolete technology, used only in older scenarios.
- AHCI still acts as a bus in some older SATA HDD arrays and hybrid arrays.
- RAID is still widely deployed for HDD and hybrid array data protection and redundancy.
What is AHCI?
Advanced Host Controller Interface (AHCI) is an Intel computer standard that is limited to Intel chipsets. AHCI has been around since 2004, where it replaced the older IDE/Parallel ATA interface in new devices.https://o1.qnsr.com/log/p.gif?;n=203;c=204660761;s=10655;x=7936;f=201812281257540;u=j;z=TIMESTAMP;a=20400368;e=i
AHCI is not identical to SATA, but acts as the bus between the host and AHCI or SATA controllers on the motherboard. The protocol improves storage management features on the SATA controller by enabling Native Command Queuing (NCQ) and hot swapping.
However, it can only process a limited number of IQ requests, because it can only hold 32 I/O requests in the queue. Native Command Queuing (NCQ) accelerates AHCI large file transfer performance on HDDs by minimizing read/write head movements and speeding up access time. Although NCQ works with SSDs, it is not terribly useful since SSDs have no moving parts.
AHCI supports Windows, Linux, and UNIX operating systems. Note that SATA SSDs do not use AHCI, which is the software protocol between the CPU and the SATA controller.
The much newer NVMe standard is replacing AHCI-enabled SSDs in high performance environments. NVMe (nonvolatile memory express) interfaces between NAND flash and SSDs using PCIe cards. AHCI has a limited queue depth of 32. NVMe significantly reduces latency and supports queue depths of 65,000.
What is IDE?
Integrated Drive Electronics (IDE) is older than AHCI. It specifies a computer interface that connects disk storage with the motherboard bus. In 1986, Western Digital released the IDE spec in partnership with Compaq and Control Data Corp.
At the time, IDE-supported ATA drives were much faster than standard SCSI drives, and the market widely deployed the new IDE platforms. Also called parallel ATA, or PATA, IDE interconnects transfer 16 bits at a time across two device connections per channel.
By 2007, AHCI and SATA had replaced IDE.
It is possible to use IDE in flash memory in a limited case: Compact Flash in IDE mode. This is an extremely compact ATA interface sometimes found in older computer devices. CFast is a variant of CF under active development, but uses SATA and not PATA.
Today, IDE/PATA is largely obsolete. Although it is still possible to find IDE drives on the shelf or deployed in older manufacturing systems, both Western Digital and Seagate stopped manufacturing and shipping them by 2013.
What is RAID?
RAID, or “redundant array of independent disk” is another mature technology but is widely deployed in storage environments.
RAID provides high availability and data protection across multiple nodes, which enables HDDs and SSDs to keep running after the loss of a device. RAID is available for SSD arrays. But since it does not accelerate SSD performance, all-flash arrays are likelier to use proprietary RAID that provide redundancy and accelerate performance on SSDs.
Storage admins may install RAID either as a hardware controller card or chip, or as software with or without a hardware component. A RAID controller card is a plug-in expansion card that connects to a PCIe or PCI-X motherboard slot. They are independent of the host, so all RAID operations are offloaded from the CPU to the dedicated card. RAID-on-Chip sits on the motherboard and integrates the host interface, I/O interfaces for HDDs, the RAID processor, and a memory controller.
The most widely used RAID types, or levels, are 0, 1, 5, 6, and 10. There are also SSD-specific RAID options in the market.
- Raid 0: Striping. Splits files and stripes the data across two disks or more, treating the striped disks as a single partition.
- RAID 1: Mirroring. Copies protected disk to 2nd disk. If the mirrored disk fails, the functioning disk takes over.
- RAID 5: Striping with Parity. Distributes striping and parity (raw binary data containing data values) at a block level.
- RAID 6: Striping with double parity. Like RAID 5, but with a minimum of 4 disks.
- RAID 10: Striping and Mirroring. Stripes across at least 4 disks for higher performance, and mirrors for redundancy.
SSDs can use traditional RAID levels. However, although RAID can improve performance on HDDs, SSDs native high speeds do not benefit from RAID speed enhancements. SSD vendors are concentrating on adding proprietary RAID functions for all-flash array.
For example, Dell XtremIO Data Protection accelerates and protects all-flash Dell arrays, while Pure Storage adds RAID-3D to its AFAs.
Comparing the Technologies
AHCI vs. IDE
There is no marketplace competition between AHCI and IDE. They have similar purposes, in that they both enable storage media to communicate with the computer system via a SATA storage controller. But AHCI is considerably faster than IDE, which is an older niche technology for outdated computer systems.
AHCI vs. RAID
AHCI do not compete with RAID, which provides redundancy and data protection on SATA drives using AHCI interconnects. In fact, enabling RAID on Intel motherboards enables AHCI as well.
RAID’s value is very different from AHCI. RAID improves redundancy and data protection on clusters of HDD/SSD drives. This enables admins to use multiple storage devices as single volumes, deploys redundancy against device losses, and increases performance by pooling data storage operations across multiple storage devices.
As noted above, a "IDE vs. RAID" comparison makes little sense, because they are so different and IDE is fading in use.
So Which Should You Choose?
The real question in the age of SATA SSD drives is, should you use AHCI, IDE, or RAID at all?
- IDE: No. IDE is an outmoded technology only used under specialized circumstances. It is possible to find IDE bridges on the shelf, but rare to find any IDE interconnects outside of older desktops and laptops.
- AHCI: Yes/No. “Yes” for Intel computers and HDDs and for hybrid arrays. “No” for all-flash SSDs arrays. Use SATA NVMe instead.
- RAID: Yes. RAID is a strong data protection mechanism for HDDs and hybrid arrays. For AFAs, use new RAID products developed specifically for flash drives.
Advanced Host Controller Interface
Integrated Drive Electronics
Redundant array of independent disk
Adds advanced storage management features to SATA drives; improves communication speed between host and drive, supports hot plugging
Parallel ATA (PATA) accelerates older drive performance
Adds redundancy and data protection to clustered drives
Older technology; does not support clusters; only works on Intel chipsets
Not generally manufactured; possible to locate specialty IDE adapters for older SATA systems
Standard RAID levels do not accelerate SSDs, and can slow performance
Operating System Support
Windows, Linux, Unix, and some open source
Windows. DOS, OS2
Mac, Windows, and some open source including OpenVMS