Vikram Sreekanti

EECS Department, University of California, Berkeley

Technical Report No. UCB/EECS-2020-140

August 10, 2020

http://www2.eecs.berkeley.edu/Pubs/TechRpts/2020/EECS-2020-140.pdf

Serverless computing has become increasingly popular in the last few years because it simplifies the developer's experience of constructing and deploying applications. Simultaneously, it enables cloud providers to pack multiple users' workloads into shared physical resources at a fine granularity, achieving higher resource efficiency. However, existing serverless Function-as-a-Service (FaaS) systems have significant shortcomings around state management—notably, high-latency IO, disabled point-to-point communication, and high function invocation overheads.

In this dissertation, we present a line of work in which we redesign serverless infrastructure to natively support efficient, consistent, and fault-tolerant state management. We first explore the architecture of a stateful FaaS system we designed called Cloudburst, which overcomes many of the limitations of commercial FaaS systems. We then turn to consistency and fault-tolerance, describing how we provide read atomic transactions in the context of FaaS applications. Finally, we describe the design and implementation of a serverless dataflow API and optimization framework specifically designed to support machine learning prediction serving workloads.

Advisors: Joseph M. Hellerstein


BibTeX citation:

@phdthesis{Sreekanti:EECS-2020-140,
    Author= {Sreekanti, Vikram},
    Title= {The Design of Stateful Serverless Infastructure},
    School= {EECS Department, University of California, Berkeley},
    Year= {2020},
    Month= {Aug},
    Url= {http://www2.eecs.berkeley.edu/Pubs/TechRpts/2020/EECS-2020-140.html},
    Number= {UCB/EECS-2020-140},
    Abstract= {Serverless computing has become increasingly popular in the last few years because it simplifies the developer's experience of constructing and deploying applications. Simultaneously, it enables cloud providers to pack multiple users' workloads into shared physical resources at a fine granularity, achieving higher resource efficiency. However, existing serverless Function-as-a-Service (FaaS) systems have significant shortcomings around state management—notably, high-latency IO, disabled point-to-point communication, and high function invocation overheads.

In this dissertation, we present a line of work in which we redesign serverless infrastructure to natively support efficient, consistent, and fault-tolerant state management. We first explore the architecture of a stateful FaaS system we designed called Cloudburst, which overcomes many of the limitations of commercial FaaS systems. We then turn to consistency and fault-tolerance, describing how we provide read atomic transactions in the context of FaaS applications. Finally, we describe the design and implementation of a serverless dataflow API and optimization framework specifically designed to support machine learning prediction serving workloads.},
}

EndNote citation:

%0 Thesis
%A Sreekanti, Vikram 
%T The Design of Stateful Serverless Infastructure
%I EECS Department, University of California, Berkeley
%D 2020
%8 August 10
%@ UCB/EECS-2020-140
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/2020/EECS-2020-140.html
%F Sreekanti:EECS-2020-140