sAirflow: Adopting Serverless in a Legacy Workflow Scheduler

Read original: arXiv:2406.01374 - Published 6/4/2024 by Filip Mikina, Pawel Zuk, Krzysztof Rzadca
Total Score

0

🌀

Sign in to get full access

or

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

Overview

  • Examines the challenges of building serverless workflows and proposes techniques for addressing performance issues
  • Introduces novel approaches for data pre-fetching, orchestration, and resource disaggregation in serverless computing
  • Covers research on building efficient serverless services and streaming query engines

Plain English Explanation

This research explores ways to improve the performance and efficiency of serverless computing, which is a cloud computing model where applications are run on-demand without the need to manage servers. The researchers identified several key challenges in building serverless workflows, such as managing data access and orchestrating multiple functions.

To address these challenges, the researchers propose novel techniques like data pre-fetching, lightweight orchestration, and resource disaggregation. They also explore building efficient serverless services and low-cost streaming query engines to improve the overall performance and capabilities of serverless computing.

The key ideas are to optimize data access, streamline function orchestration, and leverage disaggregated resources to make serverless workflows more efficient and scalable. These advancements could lead to broader adoption of serverless computing in a variety of applications.

Technical Explanation

The research covers several technical approaches for improving serverless computing. One area is data pre-fetching to optimize data access in serverless workflows. The researchers propose techniques to proactively fetch data needed by serverless functions, reducing the latency and improving the overall performance.

Another focus is lightweight orchestration for coordinating multiple serverless functions. The researchers introduce a novel orchestration framework called Dirigent that can efficiently manage the execution of complex serverless workflows.

The paper also explores resource disaggregation as a way to improve serverless computing. By separating compute, memory, and storage resources, the researchers demonstrate how to better utilize available resources and enhance the performance of serverless applications.

Additionally, the researchers share insights from building efficient serverless services and a low-cost streaming query engine on top of serverless platforms. These case studies provide valuable lessons and techniques for developing high-performing serverless applications.

Critical Analysis

The research presents promising approaches for addressing performance challenges in serverless computing, but it also acknowledges several limitations and areas for further exploration. For example, the data pre-fetching technique relies on accurate prediction of data access patterns, which may not always be feasible in real-world scenarios.

Similarly, the lightweight orchestration framework introduced in the paper may not be able to handle the full complexity of large-scale serverless workflows, and further research is needed to evaluate its scalability.

While the resource disaggregation approach shows promise, the practical implementation and deployment of such a system in cloud environments may face technical and logistical challenges that are not fully explored in the paper.

Additionally, the case studies on efficient serverless services and streaming query engines provide valuable insights, but their applicability may be limited to specific use cases and may not generalize to all serverless applications.

Overall, the research introduces innovative ideas and techniques to improve serverless computing, but further investigation and real-world validation would be needed to fully assess the practical impact and feasibility of the proposed solutions.

Conclusion

This research tackles several important challenges in building efficient and scalable serverless workflows. By introducing techniques for data pre-fetching, lightweight orchestration, and resource disaggregation, the researchers aim to improve the performance and capabilities of serverless computing. The case studies on efficient serverless services and streaming query engines also provide valuable insights for developers working in the serverless space.

While the proposed solutions show promise, the research also highlights the need for further exploration and real-world validation to address the practical limitations and challenges. Nonetheless, the ideas and techniques presented in this work have the potential to contribute to the ongoing evolution and broader adoption of serverless computing in various applications and industries.



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

sAirflow: Adopting Serverless in a Legacy Workflow Scheduler

Filip Mikina, Pawel Zuk, Krzysztof Rzadca

Serverless clouds promise efficient scaling, reduced toil and monetary costs. Yet, serverless-ing a complex, legacy application might require major refactoring and thus is risky. As a case study, we use Airflow, an industry-standard workflow system. To reduce migration risk, we propose to limit code modifications by relying on change data capture (CDC) and message queues for internal communication. To achieve serverless efficiency, we rely on Function-as-a-Service (FaaS). Our system, sAirflow, is the first adaptation of the control plane and workers to the serverless cloud - and it maintains the same interface and most of the code. Experimentally, we show that sAirflow delivers the key serverless benefits: scaling and cost reduction. We compare sAirflow to MWAA, a managed (SaaS) Airflow. On Alibaba benchmarks on warm systems, sAirflow performs similarly while halving the monetary cost. On highly parallel workflows on cold systems, sAirflow scales out in seconds to 125 workers, reducing makespan by 2x-7x.

Read more

6/4/2024

📊

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

CASA: A Framework for SLO and Carbon-Aware Autoscaling and Scheduling in Serverless Cloud Computing

S. Qi, H. Moore, N. Hogade, D. Milojicic, C. Bash, S. Pasricha

Serverless computing is an emerging cloud computing paradigm that can reduce costs for cloud providers and their customers. However, serverless cloud platforms have stringent performance requirements (due to the need to execute short duration functions in a timely manner) and a growing carbon footprint. Traditional carbon-reducing techniques such as shutting down idle containers can reduce performance by increasing cold-start latencies of containers required in the future. This can cause higher violation rates of service level objectives (SLOs). Conversely, traditional latency-reduction approaches of prewarming containers or keeping them alive when not in use can improve performance but increase the associated carbon footprint of the serverless cluster platform. To strike a balance between sustainability and performance, in this paper, we propose a novel carbon- and SLO-aware framework called CASA to schedule and autoscale containers in a serverless cloud computing cluster. Experimental results indicate that CASA reduces the operational carbon footprint of a FaaS cluster by up to 2.6x while also reducing the SLO violation rate by up to 1.4x compared to the state-of-the-art.

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