Source-linked AI summary

Live Adaptation of Dataflow Stream Processing for Hybrid Edge-Cloud Analytics

Yuanli Wang, Prateek Jain, Lei Huang, Le Xu, Vasiliki Kalavri

arXiv:2610.34658v1cs.DC

TL;DR

Hybrid edge–cloud pipelines cannot reliably sustain target rates with cloud-only processing or static edge offloading, while mature dataflow engines lack the required adaptation. Sluice adds query segmentation and live routing, and across five real-world applications it quickly converges to target throughput under changing conditions.

  • Problem

    Cloud-only processing and static edge offloading cannot reliably sustain target rates under dynamic WAN conditions and limited edge resources, while existing engines lack live adaptation for hybrid deployments.

    Source: §1 · p. 1
  • Method

    Sluice rewrites dataflow applications into independent fault-tolerant segments and routes stateless preprocessing between edge and cloud while retaining stateful operators in the cloud.

    Source: §1 · p. 2
  • Results

    Across five real-world applications, Sluice shifts computations between edge and cloud and quickly converges to target-throughput configurations under variable bandwidth, rates, and scarce compute.

    Source: §1 · p. 2
  • Takeaways & Limitations

    Sluice extends datacenter-centric dataflow engines to hybrid deployments without application changes while retaining familiar event-time and fault-tolerance semantics.

    Source: §7 · p. 12

    Sluice does not aim to tolerate permanent hardware failures; its no-data-loss guarantee under transient failures depends on the source device buffering events during recovery.

    Source: §4.3 · p. 8

Abstract

from arXiv · show

Dataflow streaming systems, like Apache Flink and Spark Streaming, are integral to modern business analytics, providing real-time insights across industries. However, for emerging hybrid edge-cloud analytics pipelines, neither processing everything in the cloud nor static edge offloading can reliably sustain the target rate under dynamic WAN conditions and limited edge resources. In this paper, we explore how these datacenter-centric platforms can be extended to support such hybrid analytics pipelines. Our goal is to maintain full transparency for user applications, while retaining built-in fault tolerance, out-of-order processing, and existing ecosystem integrations. Achieving this is challenging because existing dataflow engines assume homogeneous resources, rely on static task placement, and do not support adaptation under dynamic network and edge conditions. We introduce Sluice, an adaptive data stream processing system for hybrid clouds, compatible with dataflow streaming engines. Sluice's key contributions are: (i) an automatic query rewriter that decomposes applications into independent, fault-tolerant segments, and (ii) a live routing mechanism that shifts computations between edge and cloud without pausing execution while preserving event-time semantics. We implement Sluice on Apache Flink and evaluate it on a physical testbed with Raspberry Pi devices, as well as on a large simulated testbed of 100 VMs. Across five real-world applications, our results show that Sluice seamlessly shifts computations between edge and cloud, while consistently achieving higher throughput than baseline systems.

1 Introduction

Hybrid edge–cloud analytics need live adaptation that preserves the capabilities of mature dataflow engines. Sluice extends those engines with independent query segments and live routing between edge and cloud.

1 Introduction

  • Sluice extends datacenter-centric engines to hybrid deployments while preserving applications, familiar APIs, fault tolerance, out-of-order processing, and ecosystem integrations.Prior hybrid and edge systems often lack mature-engine features, making reimplementation and application migration substantial engineering work.Source: §1 · p. 1
  • Prior work explored pure-edge and hybrid analytics, but the paper identifies resource assumptions, static scheduling, and disruptive recovery as challenges for dataflow engines.Static placements become obsolete as WAN bandwidth, edge capacity, and event rates change; job-wide recovery can cause downtime, backlog, or source-side data loss.Source: §1 · pp. 1–2
  • Sluice dynamically reconfigures stateless preprocessing between edge and cloud while keeping stateful operators in the cloud to avoid state migration.Its automatic rewriter creates independently managed, fault-tolerant segments; routing controllers shift work without downtime and coordinate watermarks to preserve event-time correctness and no data loss.Source: §1 · p. 2
  • Across five real-world applications, Sluice shifts computation between edge and cloud and quickly converges to a configuration meeting target throughput under variable bandwidth, rates, and scarce compute.Evaluation used Raspberry Pi devices and a 100-VM cloud testbed.Source: §1 · p. 2

2 Background and motivation

The section introduces dataflow concepts and edge-to-cloud analytics scenarios to motivate dynamic operator placement. It describes common pipeline structure and operating conditions that challenge static deployments.

2.1 Streaming dataflow concepts

  • Dataflow pipelines are operator DAGs with stateless and stateful stages; watermarks track event-time progress, and consistent checkpoints restore state by replaying input from source offsets.If an operator cannot keep pace, backpressure stalls upstream stages and can lead to backlog and data loss when buffers fill.Source: §2.1 · pp. 2–3

2.2 Application scenarios

  • The five scenarios span air-quality monitoring, taxi routes, smart-grid anomalies, sentiment analysis, and video-assisted traffic monitoring.Their pipelines commonly place lightweight stateless transformations before stateful operations or complex analytics, making early stages candidates for edge offloading to reduce WAN traffic.Source: §2.2 · p. 3
  • Neither static Q5 deployment sustains target throughput throughout the experiment: cloud-only processing struggles during low bandwidth, while edge offloading struggles when edge compute is limited.The figure compares throughput under two static deployments alongside changing operating conditions.Source: §2.2 · p. 3, Figure 1 · p. 3

3 Sluice system design

Sluice transforms monolithic dataflow applications into independent query segments and supports zero-downtime reconfiguration under dynamic network and workload conditions.

3 Sluice system design

  • Sluice’s scheduler deploys query segments on edge and cloud resources, while metric collection feeds a routing controller that triggers reconfiguration as needed.The system design describes a monitoring-and-control loop for deployed jobs.Source: §3 · pp. 3–4

3.1 Adaptive routing mechanism

  • Sluice adapts stateless operators before the first stateful operator by switching event channels between edge and cloud replicas, leaving stateful operators in the cloud.Routing operators direct each event to one replica; replicas are organized so each event is processed only once, and segments can follow different execution paths.Source: §3.1 · pp. 4–5

3.2 Query re-writer

  • The query re-writer partitions the original graph at the first stateful operator, then adds stateless-operator replicas and routing operators to the upstream segment.Cloud-replica outputs bypass the next routing operator, so once an event is routed to the cloud, later operators remain in the cloud.Source: §3.2 · p. 5

3.3 Adaptive routing policy

  • Sluice uses a metrics-based heuristic to adjust routing until the target throughput is sustained, distinguishing WAN bandwidth bottlenecks from constrained edge compute.The policy assumes a feasible routing plan exists and that cloud resources can scale sufficiently to prevent the stateful segment from becoming a bottleneck.Source: §3.3 · p. 6

4 Sluice guarantees

Sluice aims to preserve application transparency across independently deployed query segments, where a single-job engine’s event-time and processing guarantees no longer apply automatically. It addresses semantic equivalence, data loss under failures, and stalled progress from failed or slow edge segments.

4.1 Assumptions

  • Sluice’s correctness guarantees assume broker event order, reliable delivery, high availability, persistence before acknowledgment, and checkpoint-based engine fault tolerance.The paper cites Kafka, Pulsar, Kinesis Data Streams, Flink, and Spark Structured Streaming as systems supporting these features.Source: §4.1 · p. 7

4.2 Semantic equivalence

  • Sluice preserves execution-path equivalence: each event traverses the same ordered logical operators in the original and transformed graphs, although stateless operators may run in different locations.Each stateless operator has identical edge and cloud replicas, and routing prevents an event from switching back to the edge after moving to the cloud.Source: §4.2 · p. 7
  • Sluice coordinates watermarks across edge and cloud paths so reordering during rerouting respects event-time boundaries and does not advance downstream progress ahead of in-flight events.A watermark union waits for upstream watermarks; the cloud segment tracks partition watermarks and computes the global watermark from their minimum.Source: §4.2 · pp. 7–8, Figure 5 · p. 7

4.3 Correctness under failures

  • Sluice provides at-least-once processing under transient failures when source devices can buffer events during recovery, using checkpoint offsets and broker persistence to replay events without data loss.When edge and cloud jobs fail simultaneously, independent checkpoint offsets can cause duplicate events to be replayed and reprocessed.Source: §4.3 · p. 8
  • Sluice avoids aligning checkpoint barriers across query segments, preventing a slow or disconnected edge device from holding up global checkpoint progress and allowing separate checkpoint intervals.Edge checkpoints can be less frequent to reduce resource use, while cloud checkpoints can be more frequent for faster recovery.Source: §4.3 · p. 8

4.4 Availability under failures

  • When a broker partition is inactive beyond a user-specified period, Sluice excludes it from the global watermark calculation to prevent that partition from stalling the pipeline.The global watermark is the minimum of the maximum watermarks from active partitions.Source: §4.4 · pp. 8–9

5 Evaluation

Sluice was evaluated on Raspberry Pi and 100-VM hybrid testbeds against fixed-placement and adaptive-placement baselines. Across changing conditions, it reconfigured without visible throughput dips and sustained target rates where the baselines did not.

5 Evaluation

  • Sluice’s evaluation covered reconfiguration overhead, adaptation to changing conditions, individual parameter impacts, and scalability.The experiments used Apache Flink 1.20 and Apache Kafka 3.9.0.Source: §5 · p. 9

5.1 Experimental setting

  • The evaluation used Testbed-RPi with five Raspberry Pi edge nodes and Testbed-100VMs with 100 edge-emulating VMs; five hybrid streaming queries were benchmarked against All-Edge, All-Cloud, and CAPSys.Runs generally lasted two hours, with five minutes of warm-up; throughput below the target indicated backpressure.Source: §5.1 · p. 9

5.2 Zero-downtime reconfiguration

  • Sluice showed no visible throughput dips during operator shifts, while each vanilla Flink shift caused approximately 3 minutes of downtime.The comparison used Q2 on Testbed-RPi, with shifts triggered every 10 minutes.Source: Figure 7 · p. 9, §5.2 · p. 9

5.3 Sluice under variable operating conditions

  • Under simultaneous workload, bandwidth, and edge-compute changes, Sluice alone sustained the target throughout the three-hour experiment on Q1 and Q5.It shifted operators to the edge when bandwidth was insufficient, then back to the cloud when edge compute contention became the bottleneck, and shifted again after bandwidth dropped.Source: Figure 8 · p. 10, §5.3 · p. 10

5.4 Impact of individual parameters

  • Across all queries and gradual or abrupt input-rate patterns, Sluice alone met the target rate; All-Edge, All-Cloud, and CAPSys each fell short in specified cases.All-Edge was limited by edge compute, All-Cloud performed poorly for Q2, Q3, and Q5, and CAPSys missed high-rate periods for Q1, Q2, and Q3.Source: Figure 9 · p. 10, §5.4 · p. 11
  • With variable bandwidth, Sluice alone consistently sustained the target; with edge compute contention, it alone always sustained the target across applications.Sluice shifted operators to the edge for network-intensive Q1, Q2, and Q5, and shifted toward the cloud when contention required it; Q5 needed no shift during contention.Source: Figure 10 · p. 11, §5.4 · p. 11

5.5 Sluice scalability

  • After routing reconfiguration, all 100 devices sustained the target, averaging 99.8% throughput-to-target; repeated policy adjustments converged to backpressure-free configurations.Initially, 39% of devices missed the target with all operators in the cloud; after subsequent bandwidth changes, Sluice reconfigured again to restore target rates.Source: §5.5 · pp. 11–12, Figure 11 · p. 12

6 Related Work

Sluice adapts mature dataflow engines to hybrid edge-cloud deployments rather than replacing them with an edge-centric architecture. Its combination of automatic query rewriting and live routing distinguishes it from prior adaptive placement and routing systems.

Edge stream processing engines

  • Unlike edge-centric systems such as DART, EdgeWise, and Frontier, Sluice targets hybrid pipelines that produce data at the edge but need cloud analysis, reusing mature dataflow engines.DART supports dynamic placement and scaling, EdgeWise schedules resources on a single device, and Frontier replicates dataflow graphs for fault tolerance.Source: §6 · p. 12

Adaptive filtering and routing

  • Compared with adaptive routing systems such as Shepherd, Falcon, and Frontier, Sluice makes its adaptive routing transparent to applications.Those systems respectively reroute tuples, support live key migration, and forward events through per-batch routing.Source: §6 · p. 12

Adaptive placement and scheduling

  • Sluice rewrites queries into independent jobs and routes between edge and cloud replicas of stateless preprocessing without pausing execution, while preserving watermark coordination and event-time semantics.Prior systems including CAPSys, Trisk, WASP, and APEROL require at least partial stopping during reconfiguration; CAPSys also assumes homogeneous resources.Source: §6 · p. 12

7 Conclusion

Sluice extends datacenter-centric dataflow engines to hybrid edge–cloud deployments without application changes. It dynamically offloads computation to the edge while retaining the underlying engine’s event-time and fault-tolerance semantics.

  • Sluice extends datacenter-centric dataflow engines to hybrid edge–cloud deployments without requiring application changes.Source: §7 · p. 12
  • Sluice dynamically offloads computations to the edge and adjusts to operational and workload dynamics.Source: §7 · p. 12
  • Users retain the underlying engine’s event-time and fault-tolerance semantics, ensuring correctness and no data loss.Source: §7 · p. 12

A Implementation details

Sluice automates Flink query segmentation and routing, while its runtime components manage watermarks, placement, and metrics. The implementation also uses Kafka to connect edge and cloud segments.

  • Users submit Flink applications without manually splitting queries, managing resources, or placing tasks; the rewriter generates query segments and adaptive routing paths.Programs must include a valid source, define mobile operators as DataStream variables without chaining methods, and expose user-defined object fields through public JSON-serializable getters and setters.Source: A Implementation details · p. 17
  • Heartbeat records carrying watermark timestamps and partition tags let the stateful segment compute a global watermark; idle partitions are excluded until they recover.Duplicate heartbeats are harmless because watermarks advance through a monotonic max-min reduction.Source: A Implementation details · p. 17
  • The routing controller periodically gathers Flink metrics and evaluates routing policies in real time, independently for each segment.It sends decisions over HTTP; CP operators use a routing flag to direct events to the cloud or edge output.Source: A Implementation details · p. 17
  • A custom Flink scheduler pins tasks to edge or cloud workers using a static placement map keyed by Task Manager IP address.ResourceProfile and SlotMatchingStrategy extensions match each task’s specified location to an available slot.Source: A Implementation details · p. 17
  • Figure 12 is labeled as a comparison of Sluice with and without the watermark inactivity tolerance mechanism.Source: Figure 12 · p. 17
  • The metrics collector records useful processing time and observed and true input and output rates per task for routing-plan recomputation.Source: A Implementation details · p. 17
  • Each query uses a dedicated Kafka topic, with each edge device writing to a distinct partition that the cloud segment reads.Source: A Implementation details · p. 17

B.1 Sluice under failures

With one edge device canceled, watermark inactivity tolerance lets Sluice continue aggregative processing using the remaining live partitions. Without idleness, the silent partition blocks progress and throughput stays at zero.

  • The experiment runs Q1 on Testbed-RPi at a fixed input rate for one hour, with a five-minute warm-up, and cancels one of five edge segments at 900s.Source: §B.1 · p. 17
  • Figure 12’s sliding-average output throughput uses the last 10 samples to smooth query-logic spikes and isolate the mechanism’s effect.Source: §B.1 · p. 17
  • After an edge device is canceled at 900s, Sluice throughput stabilizes after the tolerance period; without idleness, it remains zero through the experiment.The global watermark advances using the four remaining live broker partitions, preventing system-wide downtime under partial edge-device failures.Source: §B.1 · pp. 17–18

C Additional results

Additional per-device results show patterns similar to the devices reported in the main text, with a Q3 exception caused by input skew. The appendix figures cover variable operating conditions, input rates, and bandwidth and compute contention.

Loading 2610.34658v1…