Towards User-Defined SLA in Cloud Flash Storage - Fan, Jinhao; Yang, Ziyue; Shu, Ran; Cheng, Peng; Xiong, Yongqiang (The 12th ACM SIGOPS Asia-Pacific Workshop on Systems, 2021)
NAND flash SSDs have gained increasing popularity in cloud storage services. However, there is a gap between what users need and what cloud SSDs provide. For users, storage applications often request asymmetric read and write bandwidth, with tail read latency guarantee. For cloud providers, typical cloud SSD offerings either provide read-write aggregate throughput guarantee or only specifies peak pure-read and write throughput. It is also hard for cloud NAND flash SSDs to provide tail latency guarantees because of their notorious read-write interference problem. As a result, users have to over-provision SSD resource to satisfy their service level agreement (SLA), leading to potential under-utilization. We propose Regulator which enables users to define their SLA for NAND flash based cloud storage. With the user-defined SLA, users can get desired performance and cloud providers can improve their resource efficiency. Regulator first proposes a formalization of user-defined SLA as SLA Curve, which contains fine-grained throughput and latency requirements. Regulator then proposes an SLA-aware data placement algorithm to efficiently co-locate users according to their SLA. Finally, Regulator provides a runtime QoS module to enforce users' SLA guarantees. Evaluation shows that Regulator can increase cloud flash utilization by 15% 44% while satisfying user-defined SLAs.