- Seagate Delivers 2nd Generation Hybrid Hard Drive
- The Storage Hierarchy Gets More Complex
- What's The Difference Between SATA And NVMe?
Computer storage is becoming more complicated (see “The Storage Hierarchy Gets More Complex”). Users now can choose between hard disks (HDs), solid-state disks (SSDs), and solid-state hard disks (SSHDs), which combine HD and SSD technology into a single drive.
Hybrid disk drives put flash and rotating magnetic storage in a single box, but there is more than one way to manage the cache that flash brings to the table, depending on how the drive is designed. The drive (hardware) or the host (software) can manage the flash storage.
Table Of Contents
This file type includes high resolution graphics and schematics.
Hybrid hard drives have a single hardware interface that looks and operates like a conventional hard drive. Hardware-managed hybrid disks were the first to show up, like Seagate’s Momentus XT (Fig. 1). It has a SATA interface, but SSHDs could have any storage interface. They’re exclusively SATA because they target laptops and tablets where SATA is the most common interface.
Hardware-managed hybrid disks look like a single disk to the host’s device driver, so SSHDs can replace a hard drive or even an SSD without changing the host software. The software on the hard drive implements the caching algorithm transparently to the host (Fig. 2).
The hardware-managed SSHD’s operation is transparent to the host, other than potentially providing higher performance. However, the drive cannot take advantage of information about the operating system or applications that are using the storage.
Western Digital has started to deliver a different type of SSHD. Its software-managed hybrid disk requires a special matching device driver. This type of SSHD essentially puts two logical devices behind a single hardware interface (Fig. 3).
This approach puts the onus on the host device driver to communicate properly with the SSHD and to manage the cache in the solid-state storage. In addition, the driver must communicate with the device in the proper fashion when reading and writing.
In general, the amount of traffic between the drive and host would not have to increase significantly compared to a two-drive solution since data only needs to be transferred once to a software-managed SSHD. The commands to the drive would need to be adjusted to indicate whether writes will be to both the solid state and hard drive. Likewise, when reading data, the data from the hard drive may be placed into the solid-state side.
With the software-managed SSHD, the software can utilize information about the host operating system that would be unavailable to a hardware-managed drive.
Users now have a number of non-volatile storage options: HD, SSD, hardware-managed SSHD, and software-managed SSHD. HDs have high capacity at low cost but high latency and lower throughput than SSDs. SSDs have higher performance but their capacity costs more than HDs. SSHDs provide the capacity of a hard disk with performance that approaches an SSD but at a cost closer to the hard drive.
SSHDs target mobile devices. Software-managed SSHDs could be utilized in server applications, although they likely wouldn’t be found in large enterprise environments where a mix of SSDs and hard disks are already used.
As noted, hardware-managed SSDs require no host modifications, but they suffer from having to estimate what the host is doing and how to best cache data in the solid-state storage while the system is running. The disk-based software typically uses tricks such as watching when the system boots and uses part of the cache for improving boot time. It typically also accounts for the latency and location of boot data on the HD so it can reduce the latency but still allow streaming from the HD for large amounts of data. Essentially, it caches only the first part of a block of data on the HD.
The run-time operation of a hardware-managed SSD also needs to assume that the host is supporting a single user that wants large disk operations to be faster. This is necessary because the solid-state storage is limited. That may be sufficient for much of a commonly used application or applications that are regularly used, in which case the performance improvement to the user will be significant.
Unfortunately, the hardware-managed SSD is not as effective in a server environment or where a single user has many active applications running simultaneously. In this case, the software-managed solution has the edge because it can utilize information from the host operating system and possibly information about active applications to optimize cache utilization. The software-managed device driver will have access to information about the kind of data being written and why it’s used. For example, log files are typically written but rarely read. Another example might be software-based RAID support.
In theory, software-managed SSHDs could use a common device driver like conventional HDs, SSDs, and hardware SSHDs do already. The trick will be to garner enough support for a standard interface. Hardware-managed SSHDs are relatively new, so for now, drivers from Western Digital support Microsoft Windows.
Software-managed SSHDs generally will be employed in the caching configuration they were designed for. They could be utilized as two distinct drives, which could be a useful embedded configuration, especially in legacy environments where adding flash storage is not practical. The downside will be issues like long-term availability and compatibility.