Making the most of your SSD : a case for Differentiated Storage Services

Differentiated Storage Services (DSS) is a new QoS architecture for file and storage systems. DSS defines an OS interface by which file systems can assign arbitrary policies (performance and/or reliability) to I/O streams, and it provides mechanisms that storage systems can use to enforce these policies. The approach assumes that a stream identifier can be included in-band with each I/O request (e.g., using the Group Number field in the SCSI command set) and that the policy for each stream can be specified out-of-band through the management interface of the storage system. This work-in-progress talk will present a case for the Differentiated Storage Services architecture. In particular, we will describe an early DSS prototype, based on Ext3 and a hybrid storage system composed of rotating and solid-state disks. With very little modification, Ext3 can identify latencysensitive I/O streams (small files, directories, metadata, and the journal) and request that the storage system provision the solid-state storage for just these streams; and this is just one of many possibilities. As part of our ongoing work, across a variety of file and storage systems, we are looking into other QoS polices/mechanisms that can be used to improve application performance or reliability.