Litcius/Paper detail

FaDO: FaaS Functions and Data Orchestrator for Multiple Serverless Edge-Cloud Clusters

Christopher Peter Smith, Anshul Jindal, Mohak Chadha, Michael Gerndt, Shajulin Benedict

202242 citationsDOI

Abstract

Function-as-a-Service (FaaS) is an attractive cloud computing model that simplifies application development and deployment. However, current serverless compute platforms do not consider data placement when scheduling functions. With the growing demand for edge-cloud continuum, multi-cloud, and multi-serverless applications, this flaw means serverless technologies are still ill-suited to latency-sensitive operations like media streaming. This work proposes a solution by presenting a tool called FaDO: FaaS Functions and Data Orchestrator, designed to allow data-aware functions scheduling across multi-serverless compute clusters present at different locations, such as at the edge and in the cloud. FaDO works through header-based HTTP reverse proxying and uses three load-balancing algorithms: 1) The Least Connections, 2) Round Robin, and 3) Random for load balancing the invocations of the function across the suitable serverless compute clusters based on the set storage policies. FaDO further provides users with an abstraction of the serverless compute cluster’s storage, allowing users to interact with data across different storage services through a unified interface. In addition, users can configure automatic and policy-aware granular data replications, causing FaDO to spread data across the clusters while respecting location constraints. Load testing results show that it is capable of load balancing high-throughput workloads, placing functions near their data without contributing any significant performance overhead.

Topics & Concepts

Computer scienceCloud computingDistributed computingLoad balancing (electrical power)Scheduling (production processes)Software deploymentHeaderEdge computingOperating systemComputer networkEconomicsGeometryOperations managementGridMathematicsIoT and Edge/Fog ComputingCloud Computing and Resource ManagementCaching and Content Delivery