Adaptive online scheduling in storm

  • Authors:
  • Leonardo Aniello;Roberto Baldoni;Leonardo Querzoni

  • Affiliations:
  • Sapienza Università di Roma, Roma, Italy;Sapienza Università di Roma, Roma, Italy;Sapienza Università di Roma, Roma, Italy

  • Venue:
  • Proceedings of the 7th ACM international conference on Distributed event-based systems
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Today we are witnessing a dramatic shift toward a data-driven economy, where the ability to efficiently and timely analyze huge amounts of data marks the difference between industrial success stories and catastrophic failures. In this scenario Storm, an open source distributed realtime computation system, represents a disruptive technology that is quickly gaining the favor of big players like Twitter and Groupon. A Storm application is modeled as a topology, i.e. a graph where nodes are operators and edges represent data flows among such operators. A key aspect in tuning Storm performance lies in the strategy used to deploy a topology, i.e. how Storm schedules the execution of each topology component on the available computing infrastructure. In this paper we propose two advanced generic schedulers for Storm that provide improved performance for a wide range of application topologies. The first scheduler works offline by analyzing the topology structure and adapting the deployment to it; the second scheduler enhance the previous approach by continuously monitoring system performance and rescheduling the deployment at run-time to improve overall performance. Experimental results show that these algorithms can produce schedules that achieve significantly better performances compared to those produced by Storm's default scheduler.