By Greg Schulz, Server and StorageIO @storageio
Part 1 of this series laid out the basics of nand flash SSD with part II discussing endurance and performance. This part looks at SSD options for virtual servers, vdi or virtual desktop as well as storage for physical server environments, your usage and configuration criteria will have a bearing on what type of SSD solution is best for you. The various forms of nand flash (SLC, EMLC and MLC) are packaged in different ways (figure 1) for use in servers, storage and other devices. For example, if your environment is doing primarily updates and you have a concern over long term data integrity and maximizing your investment, historically that has meant SLC based nand flash SSD. On the other hand, if your main criteria are as much capacity as possible with as lowest price as possible, that has tended to favor MLC.
A challenge with SSDs has been where to locate them and how to use them in a transparent manner as well as identifying data or applications that can benefit from the technology. Another challenge may be the disruption to applications while moving data from its existing location to a SSD. There are various approaches for using SSDs, including as cards or modules for installation into a server, for example, using a PCIe expansion slot.
The benefit of a SSD or a cache card in a server is that I/O and storage performance can be localized close to the application. Storage is an extension of main memory and, as for real estate; location matters but comes at a price. With server-based SSD cards, applications with localized and relatively small amounts of data can benefit from the improved effective performance. SSD cards are also appearing in storage systems as an enhancement to controllers, complementing their existing DRAM based caches.
If all of your applications, IO and data can be aggregated to a single server, dedicated direct attached SSD such as PCIe cards can be a good fit. A challenge with card or server-based SSDs, however, particularly PCIe based solutions that do not exist in shared or I/O virtualization (IOV) solutions, is that they are local to that server only unless clustering or server-to-server communications are added for data sharing. However if you need to share direct access to SSD between different physical machines, dedicated PCIe based SSD would need to be exported via NAS file sharing or other data sharing software via some network connection or cluster solution.
Other approaches for deploying SSDs include devices with the same form factor and SAS or SATA interfaces to plug and play with existing server adapters, RAID controller cards, or storage systems. SSDs can also be found in caching appliances using cards; disk format sized devices or a combination, DRAM, or tiering or caching software. Storage systems have for many years supported mirrored and battery backed DRAM read and write caches, including some systems with the ability to partition some memory as SSD devices. Recently, storage systems are being optimized to utilize flash based SSDs more effectively, including increasing duty cycles, write performance optimization, and automated tiering. Storage system based solutions enable transparent access of SSDs via caching, virtualization, and tiering functionalities.
Another option is shared direct and switch or SAN attached SSD storage systems or appliances along with traditional storage systems. These storage systems or appliances may be all SSD based using PCIe flash cards, nand flash SSD in traditional HDD form factors in various combinations. Some of these appliances or storage systems combine HDD and SSD while others are all SSD (flash or DRAM) with some also having dedicated HDD for backup or destaging of data as an extra safeguard. Some storage systems use SSD as a cache extension while others leverage it as an addition tier of storage coexisting with fast 15K SAS or FC HDD and higher capacity slower lower cost SAS and SATA HDDs. Which is right for your environment is going to depend on what your needs for sharing storage, sharing data, performance, availability and feature functionality not to mention compatibility with your existing tools and software.
Different Storage Media Are Better Together
Technology alignment, that is, aligning the applicable type of storage medium and devices to the task at hand in order to meet application service requirements, is essential to achieving an optimized and efficient IT environment. For very I/O intensive active data, Figure 2 shows a balance of high performance SSD (flash or RAM) tier 0 for high I/O active data and fast 15.5K SAS or Fibre Channel tier 1media as examples of aligning the right technology to the task at hand. For low activity applications or inactive data, such as disk based backup, where storing as much data as possible at the lowest cost is the objective, slower, high capacity SATA storage systems are a good fit. For long term bulk storage to meet archiving or other retention needs while storing large weekly or monthly full backups, tape provides a good combination of performance, availability capacity, and energy efficiency per footprint.
Leveraging the right technology, tool, and best-practice techniques is important for an optimized data storage environment. To obtain maximum reliability, routine maintenance should be performed on all magnetic media, including disk and tape. Routine maintenance includes regular proactive data or media integrity checks to detect potential errors before they become a problem. For disk based on line primary as well as secondary and D2D solutions, media maintenance involves proactive drive integrity checks or powering up spun down disks along with background RAID parity checks.
Wrapping up general tips and comments:
- Factor in the total cost of ownership (TCO) and return on investment (ROI).
- Audit and periodically test all data protection media, processes, and procedures.
- Adhere to vendor recommended media handling techniques.
- Incorporate a media and data migration plan as part of an overall data retention strategy.
- Align the applicable technology to the task at hand.
SSD component and solution providers include Apple, EMC, Fusionio, IBM, IMF (Intel Micron Foundry), Intel, LSI, Marvel, Micron, NetApp, Oracle, PureStorage, Samsung, SANdisk, Seagate, Solidfire, STEC, Storsimple, Tintri, TMS, Violin, Westeren Digital, and Whiptail among others.