Installation guide

Chapter 20.
119
Solid-State Disk Deployment
Guidelines
Solid-state disks (SSD) are storage devices that use NAND flash chips to persistently store data. This
sets them apart from previous generations of disks, which store data in rotating, magnetic platters.
In an SSD, the access time for data across the full Logical Block Address (LBA) range is constant;
whereas with older disks that use rotating media, access patterns that span large address ranges
incur seek costs. As such, SSD devices have better latency and throughput.
Not all SSDs show the same performance profiles, however. In fact, many of the first generation
devices show little or no advantage over spinning media. Thus, it is important to define classes of solid
state storage to frame further discussion in this section.
SSDs can be divided into three classes, based on throughput:
The first class of SSDs use a PCI-Express connection, which offers the fastest I/O throughput
compared to other classes. This class also has a very low latency for random access.
The second class uses the traditional SATA connection, and features fast random access for read
and write operations (though not as fast as SSDs that use PCI-Express connection).
The third class also uses SATA, but the performance of SSDs in this class do not differ substantially
from devices that use 7200rpm rotational disks.
For all three classes, performance degrades as the number of used blocks approaches the disk
capacity. The degree of performance impact varies greatly by vendor. However, all devices experience
some degradation.
To address the degradation issue, the ATA specification outlines a new command: TRIM. This
command allows the file system to communicate to the underlying storage device that a given range
of blocks is no longer in use. The SSD can use this information to free up space internally, using the
freed blocks for wear-leveling.
Enabling TRIM support is most useful when there is available free space on the file system, but the
file system has already written to most logical blocks on the underlying storage device. For more
information about TRIM, refer to its Data Set Management T13 Specifications from the following link:
http://t13.org/Documents/UploadedDocuments/docs2008/e07154r6-
Data_Set_Management_Proposal_for_ATA-ACS2.doc
Note
Not all solid-state devices in the market support TRIM.
20.1. Deployment Considerations
Because of the internal layout and operation of SSDs, it is best to partition devices on an internal
erase block boundary. Partitioning utilities in Red Hat Enterprise Linux 6 chooses sane defaults if the
SSD exports topology information. This is especially true if the exported topology information includes
alignment offsets and optimal I/O sizes.
However, if the device does not export topology information, Red Hat recommends that the first
partition be created at a 1MB boundary.