GeoFF: Federated Serverless Workflows with Data Pre-Fetching

Read original: arXiv:2405.13594 - Published 5/24/2024 by Valentin Carl, Trever Schirmer, Tobias Pfandzelter, David Bermbach
Total Score

0

📊

Sign in to get full access

or

If you already have an account, we'll log you in

Overview

  • Function-as-a-Service (FaaS) is a cloud computing model where applications are implemented as workflows of independent functions.
  • Cloud providers offer composition services for these workflows, but they do not support cross-platform workflows, forcing developers to hardcode composition logic.
  • FaaS workflows can be slow due to issues like cascading cold starts, inter-function latency, and data download latency.

Plain English Explanation

The paper proposes a solution called GeoFF, a serverless choreography middleware that can execute FaaS workflows across different public and private FaaS platforms. GeoFF supports ad-hoc workflow recomposition, which means it can dynamically adjust the workflow as needed without hard-coding the composition logic.

To address the performance issues of FaaS workflows, GeoFF also supports function pre-warming and data pre-fetching. This helps minimize end-to-end workflow latency by taking the cold starts and data download latency off the critical path. In other words, GeoFF tries to pre-load the necessary functions and data ahead of time so that when the workflow is executed, it runs more smoothly without those delays.

Technical Explanation

The paper presents the design and implementation of GeoFF, a serverless choreography middleware that can execute FaaS workflows across different platforms. GeoFF provides ad-hoc workflow recomposition, which allows it to dynamically adjust the workflow without hardcoding the composition logic.

To improve performance, GeoFF supports function pre-warming and data pre-fetching. Function pre-warming keeps functions "warm" and ready to execute, avoiding the cold start latency. Data pre-fetching downloads necessary data in advance, reducing the download latency on the critical path.

The paper evaluates GeoFF's performance using a proof-of-concept prototype and a realistic application. The results show that GeoFF can reduce end-to-end workflow latency by more than 50% compared to traditional FaaS workflows.

Critical Analysis

The paper addresses an important challenge in the FaaS space – the lack of support for cross-platform workflow execution and the performance issues caused by cold starts and data download latency.

One potential limitation is that the paper only evaluates GeoFF's performance using a single realistic application. It would be helpful to see how GeoFF performs with a wider range of applications and workloads to better understand its generalizability.

Additionally, the paper does not discuss the overhead or complexity introduced by GeoFF's workflow recomposition and pre-warming/pre-fetching mechanisms. It would be valuable to understand the tradeoffs and potential downsides of these features.

Overall, the paper presents a promising approach to address the challenges of FaaS workflows, but further research and evaluation would be needed to fully assess its practical implications and limitations.

Conclusion

The paper introduces GeoFF, a serverless choreography middleware that can execute FaaS workflows across different platforms and optimizes performance through function pre-warming and data pre-fetching. This helps address the limitations of current FaaS platforms, which do not support cross-platform workflows and suffer from performance issues.

The experimental results show that GeoFF can significantly reduce the end-to-end latency of FaaS workflows, potentially making serverless computing more viable for a wider range of applications. While further research is needed, this work represents an important step towards more robust and efficient FaaS platforms.



This summary was produced with help from an AI and may contain inaccuracies - check out the links to read the original source documents!

Follow @aimodelsfyi on 𝕏 →

Related Papers

📊

Total Score

0

GeoFF: Federated Serverless Workflows with Data Pre-Fetching

Valentin Carl, Trever Schirmer, Tobias Pfandzelter, David Bermbach

Function-as-a-Service (FaaS) is a popular cloud computing model in which applications are implemented as work flows of multiple independent functions. While cloud providers usually offer composition services for such workflows, they do not support cross-platform workflows forcing developers to hardcode the composition logic. Furthermore, FaaS workflows tend to be slow due to cascading cold starts, inter-function latency, and data download latency on the critical path. In this paper, we propose GeoFF, a serverless choreography middleware that executes FaaS workflows across different public and private FaaS platforms, including ad-hoc workflow recomposition. Furthermore, GeoFF supports function pre-warming and data pre-fetching. This minimizes end-to-end workflow latency by taking cold starts and data download latency off the critical path. In experiments with our proof-of-concept prototype and a realistic application, we were able to reduce end-to-end latency by more than 50%.

Read more

5/24/2024

👀

Total Score

0

GeoFaaS: An Edge-to-Cloud FaaS Platform

Mohammadreza Malekabbasi, Tobias Pfandzelter, Trever Schirmer, David Bermbach

The massive growth of mobile and IoT devices demands geographically distributed computing systems for optimal performance, privacy, and scalability. However, existing edge-to-cloud serverless platforms lack location awareness, resulting in inefficient network usage and increased latency. In this paper, we propose GeoFaaS, a novel edge-to-cloud Function-as-a-Service (FaaS) platform that leverages real-time client location information for transparent request execution on the nearest available FaaS node. If needed, GeoFaaS transparently offloads requests to the cloud when edge resources are overloaded, thus, ensuring consistent execution without user intervention. GeoFaaS has a modular and decentralized architecture: building on the single-node FaaS system tinyFaaS, GeoFaaS works as a stand-alone edge-to-cloud FaaS platform but can also integrate and act as a routing layer for existing FaaS services, e.g., in the cloud. To evaluate our approach, we implemented an open-source proof-of-concept prototype and studied performance and fault-tolerance behavior in experiments.

Read more

7/26/2024

The State of FaaS: An analysis of public Functions-as-a-Service providers
Total Score

0

The State of FaaS: An analysis of public Functions-as-a-Service providers

Nnamdi Ekwe-Ekwe, Lucas Amos

Serverless computing is a growing and maturing field that is the focus of much research, industry interest and adoption. Previous works exploring Functions-as-a-Service providers have focused primarily on the most well known providers AWS Lambda, Google Cloud Functions and Microsoft Azure Functions without exploring other providers in similar detail. In this work, we conduct the first detailed review of ten currently publicly available FaaS platforms exploring everything from their history, to their features and pricing to where they sit within the overall public FaaS landscape, before making a number of observations as to the state of the FaaS.

Read more

9/4/2024

Affinity-aware Serverless Function Scheduling
Total Score

0

Affinity-aware Serverless Function Scheduling

Giuseppe De Palma, Saverio Giallorenzo, Jacopo Mauro, Matteo Trentin, Gianluigi Zavattaro

Functions-as-a-Service (FaaS) is a Serverless Cloud paradigm where a platform manages the scheduling (e.g., resource allocation, runtime environments) of stateless functions. Recent developments show the benefits of using domain-specific languages to express per-function policies, e.g., policies can enforce the allocation of functions on nodes that enjoy lower data-access latencies thanks to proximity and connection pooling. Here, we focus on affinity-aware scenarios, i.e., where, for performance and functional requirements, the allocation of a function depends on the presence/absence of other functions on nodes. We first present aAPP, an affinity-aware extension of a declarative, platform-agnostic language for defining custom function scheduling policies. We implement a prototype supporting this scheduling language by extending the popular Apache OpenWhisk FaaS platform and show that using aAPP in affinity-aware scenarios leads to an appreciable reduction in latency without noticeable overhead for scenarios without affinity constraints.

Read more

7/23/2024