Online Scheduling and Interference Alleviation for Low-Latency, High-Throughput Processing of Data Streams

Data Streams occur naturally in several observational settings and often need to be processed with a low latency. Streams pose unique challenges: they have no preset lifetimes, the traffic on these streams may be bursty, and data arrival rates on these streams can be quite high. Furthermore, stream processing computations are generally stateful where the outcome of processing a data stream packet depends on the state that builds up within the computation over multiple, successive rounds of execution. As the number of streams increases, stream processing computations need to be orchestrated over a collection of machines. Achieving timeliness and high throughput in such settings is a challenge. Optimal scheduling of stream processing computations is an instance of the resource constrained scheduling problem, and depending on the precise formulation of the problem can be characterized as either NP-Complete or NP-Hard. We have designed an algorithm for online scheduling of stream processing computations. Our algorithm focuses on reducing interference that adversely impacts performance of stream processing computations. Our measure of interference is based on stream packet arrivals at a particular machine, the accompanying resource utilization encompassing CPU, memory and network utilization, and the resource utilization at machines comprising the cluster. Our algorithm performs continuous, incremental detection of interference experienced by computations and performing migrations to alleviate them.

[1]  Mohamed A. Sharaf,et al.  Class-based continuous query scheduling for data streams , 2009, DMSN '09.

[2]  Boleslaw K. Szymanski,et al.  The Internet Operating System: Middleware for Adaptive Distributed Computing , 2006, Int. J. High Perform. Comput. Appl..

[4]  Woodie C. Flowers,et al.  A genetic algorithm for resource-constrained scheduling , 1996 .

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

[6]  Robert D. Blumofe,et al.  Scheduling multithreaded computations by work stealing , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[7]  Khaled Salah,et al.  Impact of CPU Utilization Thresholds and Scaling Size on Autoscaling Cloud Resources , 2013, 2013 IEEE 5th International Conference on Cloud Computing Technology and Science.

[8]  Luiz André Barroso,et al.  The tail at scale , 2013, CACM.

[9]  Robert Grimm,et al.  A catalog of stream processing optimizations , 2014, ACM Comput. Surv..

[10]  Carlos A. Varela,et al.  Elastic Scalable Cloud Computing Using Application-Level Migration , 2012, 2012 IEEE Fifth International Conference on Utility and Cloud Computing.

[11]  T. H. Kyaw,et al.  Multiparameter Intelligent Monitoring in Intensive Care II: A public-access intensive care unit database* , 2011, Critical care medicine.

[12]  Abraham Bernstein,et al.  Network-Aware Workload Scheduling for Scalable Linked Data Stream Processing , 2013, International Semantic Web Conference.

[13]  Anthony A. Maciejewski,et al.  Dynamic Resource Management in Energy Constrained Heterogeneous Computing Systems Using Voltage Scaling , 2008, IEEE Transactions on Parallel and Distributed Systems.

[14]  Alexandros Labrinidis,et al.  Adaptive Class-Based Scheduling of Continuous Queries , 2012, 2012 IEEE 28th International Conference on Data Engineering Workshops.

[15]  P ? ? ? ? ? ? ? % ? ? ? ? , 1991 .

[16]  Raul Castro Fernandez,et al.  Integrating scale out and fault tolerance in stream processing using operator state management , 2013, SIGMOD '13.

[17]  Mahadev Konar,et al.  ZooKeeper: Wait-free Coordination for Internet-scale Systems , 2010, USENIX ATC.

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

[19]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[20]  Willis J. Tompkins,et al.  A Real-Time QRS Detection Algorithm , 1985, IEEE Transactions on Biomedical Engineering.

[21]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[22]  Andrew Chi-Chih Yao,et al.  Resource Constrained Scheduling as Generalized Bin Packing , 1976, J. Comb. Theory A.

[23]  Ying Xing,et al.  Providing resiliency to load variations in distributed stream processing , 2006, VLDB.

[24]  José Antonio Lozano,et al.  A Review of Auto-scaling Techniques for Elastic Applications in Cloud Environments , 2014, Journal of Grid Computing.

[25]  Michael Stonebraker,et al.  Operator Scheduling in a Data Stream Manager , 2003, VLDB.

[26]  Rajkumar Buyya,et al.  Fog Computing: Helping the Internet of Things Realize Its Potential , 2016, Computer.

[27]  Huaimin Wang,et al.  Elastic Allocator: An Adaptive Task Scheduler for Streaming Query in the Cloud , 2014, 2014 IEEE 8th International Symposium on Service Oriented System Engineering.

[28]  R. Srikant,et al.  Scheduling Storms and Streams in the Cloud , 2015, SIGMETRICS.

[29]  Klaus-Robert Müller,et al.  Identification of nonstationary dynamics in physiological recordings , 2000, Biological Cybernetics.

[30]  Scott Shenker,et al.  Discretized Streams: An Efficient and Fault-Tolerant Model for Stream Processing on Large Clusters , 2012, HotCloud.

[31]  Mohammad Hosseini,et al.  R-Storm: Resource-Aware Scheduling in Storm , 2015, Middleware.

[32]  Kun-Lung Wu,et al.  SODA: An Optimizing Scheduler for Large-Scale Stream-Based Distributed Computer Systems , 2008, Middleware.

[33]  Thomas S. Heinze,et al.  Elastic Complex Event Processing under Varying Query Load , 2013, BD3@VLDB.

[34]  Kirk Pruhs,et al.  Efficient scheduling of heterogeneous continuous queries , 2006, VLDB.

[35]  Vipin Kumar,et al.  A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs , 1998, SIAM J. Sci. Comput..

[36]  Jeffrey M. Hausdorff,et al.  Physionet: Components of a New Research Resource for Complex Physiologic Signals". Circu-lation Vol , 2000 .

[37]  Shrideep Pallickara,et al.  NEPTUNE: Real Time Stream Processing for Internet of Things and Sensing Environments , 2016, 2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS).

[38]  Carlos A. Varela Programming Distributed Computing Systems: A Foundational Approach , 2013 .

[39]  Marimuthu Palaniswami,et al.  Internet of Things (IoT): A vision, architectural elements, and future directions , 2012, Future Gener. Comput. Syst..

[40]  Zbigniew Michalewicz,et al.  Time Series Forecasting for Dynamic Environments: The DyFor Genetic Program Model , 2007, IEEE Transactions on Evolutionary Computation.

[41]  Gwilym M. Jenkins,et al.  Time series analysis, forecasting and control , 1971 .

[42]  P. Young,et al.  Time series analysis, forecasting and control , 1972, IEEE Transactions on Automatic Control.

[43]  Stratis Viglas,et al.  Fast Heuristics for Near-Optimal Task Allocation in Data Stream Processing over Clusters , 2014, CIKM.

[44]  David Fernández-Baca,et al.  Allocating Modules to Processors in a Distributed System , 1989, IEEE Trans. Software Eng..

[45]  M. Saeed Multiparameter Intelligent Monitoring in Intensive Care II ( MIMIC-II ) : A public-access intensive care unit database , 2011 .

[46]  Setsuo Ohsuga,et al.  INTERNATIONAL CONFERENCE ON VERY LARGE DATA BASES , 1977 .