Styx: Transactional Stateful Functions on Streaming Dataflows

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Psarakis, Kyriakos, Christodoulou, George, Siachamis, George, Fragkoulis, Marios, Katsifodimos, Asterios
Format: Preprint
Published: 2023
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866911023523430400
author Psarakis, Kyriakos
Christodoulou, George
Siachamis, George
Fragkoulis, Marios
Katsifodimos, Asterios
author_facet Psarakis, Kyriakos
Christodoulou, George
Siachamis, George
Fragkoulis, Marios
Katsifodimos, Asterios
contents Developing stateful cloud applications, such as low-latency workflows and microservices with strict consistency requirements, remains arduous for programmers. The Stateful Functions-as-a-Service (SFaaS) paradigm aims to serve these use cases. However, existing approaches provide weak transactional guarantees or perform expensive external state accesses requiring inefficient transactional protocols that increase execution latency. In this paper, we present Styx, a novel dataflow-based SFaaS runtime that executes serializable transactions consisting of stateful functions that form arbitrary call-graphs with exactly-once guarantees. Styx extends a deterministic transactional protocol by contributing: i) a function acknowledgment scheme to determine transaction boundaries required in SFaaS workloads, ii) a function-execution caching mechanism, and iii) an early-commit reply mechanism that substantially reduces transaction execution latency. Experiments with the YCSB, TPC-C, and Deathstar benchmarks show that Styx outperforms state-of-the-art approaches by achieving at least one order of magnitude higher throughput while exhibiting near-linear scalability and low latency.
format Preprint
id arxiv_https___arxiv_org_abs_2312_06893
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle Styx: Transactional Stateful Functions on Streaming Dataflows
Psarakis, Kyriakos
Christodoulou, George
Siachamis, George
Fragkoulis, Marios
Katsifodimos, Asterios
Distributed, Parallel, and Cluster Computing
Databases
Developing stateful cloud applications, such as low-latency workflows and microservices with strict consistency requirements, remains arduous for programmers. The Stateful Functions-as-a-Service (SFaaS) paradigm aims to serve these use cases. However, existing approaches provide weak transactional guarantees or perform expensive external state accesses requiring inefficient transactional protocols that increase execution latency. In this paper, we present Styx, a novel dataflow-based SFaaS runtime that executes serializable transactions consisting of stateful functions that form arbitrary call-graphs with exactly-once guarantees. Styx extends a deterministic transactional protocol by contributing: i) a function acknowledgment scheme to determine transaction boundaries required in SFaaS workloads, ii) a function-execution caching mechanism, and iii) an early-commit reply mechanism that substantially reduces transaction execution latency. Experiments with the YCSB, TPC-C, and Deathstar benchmarks show that Styx outperforms state-of-the-art approaches by achieving at least one order of magnitude higher throughput while exhibiting near-linear scalability and low latency.
title Styx: Transactional Stateful Functions on Streaming Dataflows
topic Distributed, Parallel, and Cluster Computing
Databases
url https://arxiv.org/abs/2312.06893