Skip to main content
QUICK REVIEW

[Paper Review] Elasticutor: Rapid Elasticity for Realtime Stateful Stream Processing

Li Wang, Tom Z. J. Fu|arXiv (Cornell University)|Nov 3, 2017
Advanced Database Systems and Queries18 references3 citations
TL;DR

Elasticutor proposes an executor-centric approach to rapid elasticity in real-time stateful stream processing, avoiding global synchronization by dynamically reallocating CPU cores to overloaded executors instead of repartitioning keys. It achieves up to 2x higher throughput and up to two orders of magnitude lower latency than resource-centric methods on real-world workloads.

ABSTRACT

Elasticity is highly desirable for stream processing systems to guarantee low latency against workload dynamics, such as surges in data arrival rate and fluctuations in data distribution. Existing systems achieve elasticity following a resource-centric approach that uses dynamic key partitioning across the parallel instances, i.e. executors, to balance the workload and scale operators. However, such operator-level key repartitioning needs global synchronization and prohibits rapid elasticity. To address this problem, we propose an executor-centric approach, whose core idea is to avoid operator-level key repartitioning while implementing each executor as the building block of elasticity. Following this new approach, we design the Elasticutor framework with two level of optimizations: i) a novel implementation of executors, i.e., elastic executors, that perform elastic multi-core execution via efficient intra-executor load balancing and executor scaling and ii) a global model-based scheduler that dynamically allocates CPU cores to executors based on the instantaneous workloads. We implemented a prototype of Elasticutor and conducted extensive experiments. Our results show that Elasticutor doubles the throughput and achieves an average processing latency up to 2 orders of magnitude lower than previous methods, for a dynamic workload of real-world applications.

Motivation & Objective

  • Address the performance bottleneck caused by global synchronization in existing resource-centric elasticity mechanisms for stream processing.
  • Overcome the delay of seconds in key space repartitioning due to state migration and routing updates.
  • Enable rapid, low-latency elasticity by decoupling operator-level key partitioning from dynamic resource provisioning.
  • Design a framework that supports efficient intra-executor load balancing and dynamic core scaling.
  • Minimize migration and communication overhead during workload rebalancing while maintaining state consistency.

Proposed method

  • Introduce elastic executors that perform dynamic load balancing across assigned CPU cores and scale efficiently when cores are added or removed.
  • Implement a model-based dynamic scheduler that assigns CPU cores to executors based on real-time workload metrics.
  • Decouple key space binding from resource allocation, so executors retain fixed key subspaces and avoid state migration.
  • Use lightweight remote task coordination to minimize inter-executor communication during core reassignment.
  • Optimize for computation locality and reduce remote data transfer and state migration by avoiding inter-executor state movement.
  • Deploy the prototype on Apache Storm and evaluate using synthetic and real-world stock exchange workloads.

Experimental results

Research questions

  • RQ1Can an executor-centric approach eliminate the need for global synchronization during elasticity in stateful stream processing?
  • RQ2How does dynamic core reassignment compare to traditional key space repartitioning in terms of latency and throughput?
  • RQ3To what extent can a model-based scheduler improve resource utilization and reduce scheduling overhead?
  • RQ4What is the impact of reduced state migration and remote data transfer on system performance and scalability?
  • RQ5Can the framework maintain low latency and high throughput under dynamic, skewed workloads?

Key findings

  • Elasticutor doubles the throughput compared to traditional resource-centric elasticity methods on real-world stock exchange workloads.
  • The framework achieves an average processing latency up to two orders of magnitude lower than previous approaches.
  • State migration rates under Elasticutor are 5x lower than under a naive elastic core (naive-EC) approach.
  • Remote data transfer under Elasticutor is 10x lower than under naive-EC, freeing up network bandwidth for inter-operator communication.
  • Throughput scales nearly linearly with cluster size, and scheduling cost remains low at around several milliseconds per reassignment.
  • The system achieves rapid elasticity within milliseconds, avoiding the seconds-long delays typical of key-repartitioning methods.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.