On QoS-aware scheduling of data stream applications over fog computing infrastructures

Fog computing is rapidly changing the distributed computing landscape by extending the Cloud computing paradigm to include wide-spread resources located at the network edges. This diffused infrastructure is well suited for the implementation of data stream processing (DSP) applications, by possibly exploiting local computing resources. Storm is an open source, scalable, and fault-tolerant DSP system designed for locally distributed clusters. We made it suitable to operate in a geographically distributed and highly variable environment; to this end, we extended Storm with new components that allow to execute a distributed QoS-aware scheduler and give self-adaptation capabilities to the system. In this paper we provide a thorough experimental evaluation of the proposed solution using two sets of DSP applications: the former is characterized by a simple topology with different requirements; the latter comprises some well known applications (i.e., Word Count, Log Processing). The results show that the distributed QoS-aware scheduler outperforms the centralized default one, improving the application performance and enhancing the system with runtime adaptation capabilities. However, complex topologies involving many operators may cause some instability that can decrease the DSP application availability.

[1]  Thomas S. Heinze,et al.  Cloud-based data stream processing , 2014, DEBS '14.

[2]  Vincenzo Grassi,et al.  Distributed QoS-aware scheduling in storm , 2015, DEBS.

[3]  Roberto Baldoni,et al.  Adaptive online scheduling in storm , 2013, DEBS.

[4]  Nicolas Hidalgo,et al.  Symbiosis: Sharing mobile resources for stream processing , 2014, 2014 IEEE Symposium on Computers and Communications (ISCC).

[5]  Jian Tang,et al.  T-Storm: Traffic-Aware Online Scheduling in Storm , 2014, 2014 IEEE 34th International Conference on Distributed Computing Systems.

[6]  Xintong Wang,et al.  Vivaldi : A Decentralized Network Coordinate System , 2016 .

[7]  Leonardo Neumeyer,et al.  S4: Distributed Stream Computing Platform , 2010, 2010 IEEE International Conference on Data Mining Workshops.

[8]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[9]  Katharina Morik,et al.  Heterogeneous Stream Processing and Crowdsourcing for Urban Traffic Management , 2014, EDBT.

[10]  Margo I. Seltzer,et al.  Network-Aware Operator Placement for Stream-Processing Systems , 2006, 22nd International Conference on Data Engineering (ICDE'06).

[11]  Jacopo Urbani,et al.  AJIRA: A Lightweight Distributed Middleware for MapReduce and Stream Processing , 2014, 2014 IEEE 34th International Conference on Distributed Computing Systems.

[12]  Maria Ebling,et al.  An open ecosystem for mobile-cloud convergence , 2015, IEEE Communications Magazine.

[13]  Jiang Zhu,et al.  Fog Computing: A Platform for Internet of Things and Analytics , 2014, Big Data and Internet of Things.

[14]  Jignesh M. Patel,et al.  Storm@twitter , 2014, SIGMOD Conference.