Abstract
Computing infrastructure representing both hyperscalers and the cloud depends on high-performance, reliable, and scalable storage systems. This creates an opportunity for optimizations in the areas of caching and building novel storage system features. Caching is commonly used to meet the performance requirements on the client and server ends of computing. Despite the tremendous innovation in this space, there is room for improvement in cache replacement algorithms and distributed caching solutions. Complementary to this, modern applications demand an increasing number of complex storage features such as compression, encryption, and backup. However, extending storage systems is challenging because of the inherent complexity of their codebases and the need to ensure that the storage state does not become corrupt or inconsistent in the process of adding new features.
This dissertation first explores common cloud application workloads and their characteristics that can be exploited by storage caching algorithms. We then design CACHEUS, a novel, fully adaptive, and machine-learned caching framework that utilizes a combination of experts designed to address a wide variety of workloads. CACHEUS proved to be the most consistently performing caching algorithm across a range of workloads and cache sizes when using newly proposed experts. Second, we design CaaS, a generalized and fault-tolerant caching service for cloud data centers. CaaS unifies and abstracts data center caching resources making these available to cloud workloads across different storage systems. CaaS reduces cache resources used in the data centers and additionally improves the application write latency by absorbing write bursts commonly observed in workloads. In addition, CaaS proposes a distributed write-back protocol to support writes while achieving consistent caching with respect to back-end storage and a storage quality-of-service design with latency and throughput reservations. Finally, we propose TxFuse, a novel, decoupled storage architecture that simplifies the development and deployment of storage features. We explored the characteristics of different types of features to create a model for storage feature development expanding multiple storage systems. TxFuse develops transactional coupling, a mechanism critical to the correct functioning of decoupled storage feature implementations. In addition, TxFuse develops storage-local mechanisms that implement embedded features in the storage core directly.
Biography
Liana Valdes Rodriguez is a Ph.D. Candidate at the Knight Foundation School of Computing and Information Sciences, Florida International University, pursuing her Ph.D. under the guidance of Prof. Raju Rangaswami. Her research interests include Storage, Distributed Systems, Caching Algorithms, ML for Systems, Systems for ML, and Operating Systems. Liana’s research has been published at top-tier venues including USENIX FAST and USENIX HotStorage. In addition to her academic achievements, Liana has gained valuable practical experience through research internships at Seagate Inc. in California and Microsoft Research in Cambridge, UK. These experiences have honed her skills in areas such as distributed consensus, transactional coupling, and software development. Liana has also contributed through her roles as a Graduate Research Assistant at the Systems Research Laboratory, Sylab, and as a Teaching Assistant, where she imparted knowledge in subjects like Operating Systems and Transmission Systems. Her passion for education is also underscored by her involvement as a Teaching Assistant during her undergraduate studies at Technological University of Havana. Recognized for her outstanding achievements, Liana has received multiple honors and awards, including the CMD-IT/ACM Richard Tapia Celebration of Diversity in Computing Conference Scholarship, Grace Hopper Celebration of Women in Computing FIU Scholarship, GAANN Fellowship from the U.S. Department of Education, and USENIX Student Travel Award.