PDF

Description

Serverless computing has gained significant attention over the last few years. The core advantage of serverless is that it abstracts away low-level operational concerns and opens up opportunities for developers without sophisticated systems expertise to harness the power of the cloud and build scalable distributed applications. However, there are three main challenges that limit the capability and prevent the adoption of serverless infrastructure. First, serverless systems need to deliver high performance at any scale, from a single multicore machine to a geo-distributed deployment. Second, serverless systems need to dynamically respond to workload shifts and autoscale to meet performance goals while minimizing cost. Third, serverless systems need to offer robust consistency guarantees to support a wide variety of applications while maintaining high performance.

This dissertation presents a line of research that addresses these challenges. We first introduce Anna, a high-performance key-value store that employs a lattice-based coordination-free execution model. The design of Anna achieves seamless scaling while offering rich consistency guarantees. We then discuss how we extend Anna to become a serverless, tiered storage system. Anna’s autoscaling mechanisms and policies enable intelligent trade-off between latency and cost under dynamic workloads. Finally, we present HydroCache, a caching layer that sits in between a function-as-a-service platform and the underlying storage system. HydroCache maintains the benefit of resource disaggregation offered by existing serverless computing platforms while delivering low-latency request handling and transactional causal consistency, the strongest consistency model that can be achieved without coordination.

Details

Files

Statistics

from
to
Export
Download Full History