Slide 1

Slide 1 text

Elastic Stream Processing for the Internet of Things Christoph Hochreiner, Michael Vögler, Stefan Schulte, Schahram Dustdar

Slide 2

Slide 2 text

Motivation 2

Slide 3

Slide 3 text

Motivational Scenario Challenges • Raw Sensor Data must not be exported to other countries due to legal reasons • Analysis algorithm must not be hosted outside the companies premises • System needs to be configurable • Data should be processed next to the sensor to reduce latency 3

Slide 4

Slide 4 text

Motivational Scenario Solution Decompose the stream processing system into microservices 4

Slide 5

Slide 5 text

Requirements • Inherent hybrid cloud support to consider legal and business related regulations • Reconfiguration at runtime • Computational resource elasticity • Cost efficiency 5

Slide 6

Slide 6 text

Related Systems 6 System S Storm Spark Cloud Data Flow Stream Cloud Distributed Storm Cloud Dataflow AWS IOT Hybrid Cloud Support ✔ ✔ ✔ ✔ Reconfiguration at Runtime (✔) Resource Elasticity at Runtime (✔) ✔ ✔ (✔) ✔ ✔ Cost Efficiency (✔) (✔)

Slide 7

Slide 7 text

System Design 7

Slide 8

Slide 8 text

Stream Processing Topology 8 IoT Device Processing Operation User

Slide 9

Slide 9 text

System Design 9 Operator Node Processing Node

Slide 10

Slide 10 text

System Design 10

Slide 11

Slide 11 text

Evaluation 11

Slide 12

Slide 12 text

Evaluation Scenario Objective Analyze individual taxi rides, which are composed of location-based time-series 12 Data Transfer Data Aggregation Processing operation Distance Speed Average Speed Aggregation Analysis Monitor

Slide 13

Slide 13 text

Evaluation Preliminaries Service Level Agreement Report Generation Time Maximal processing duration after the last time-series item was posted until the analysis is finished is 60 seconds. Node granularity Each Operator Node and Processing Node is presented by a virtual machine. 13

Slide 14

Slide 14 text

Evaluation Preliminaries Resource Provisioning Approaches Elastic-provisioning Threshold-based resource allocation approach based on the CPU load of the Processing Nodes as well as the load on the incoming message queue. Under-provisioning Fixed provisioning of Processing Nodes which just do not comply with any SLA. Over-provisioning Fixed provisioning of a minimal set of Processing Nodes, which yield a 100 % SLA compliance. Node allocation for baselines Node assignment for baselines is indentical as for the elastic scenario. 14

Slide 15

Slide 15 text

Evaluation Results 15 Elastic Provisioning Under provisioning Over Provisioning Cost for Processing Nodes 2160,66 1855 2665 Total Makespan (sec) 6653 6975 6655 Average Report Generation (sec) 77 355 35 Total Delays 21 75 0 SLA Adherance (%) 28 0 100

Slide 16

Slide 16 text

Evaluation Results 16 Elastic Provisioning Under provisioning Over Provisioning Cost for Processing Nodes 2160,66 1855 2665 Total Makespan (sec) 6653 6975 6655 Average Report Generation (sec) 77 355 35 Total Delays 21 75 0 SLA Adherance (%) 28 0 100 20 % cost reduction compared to over-provisioning

Slide 17

Slide 17 text

Evaluation Results 17 Elastic Provisioning Under provisioning Over Provisioning Cost for Processing Nodes 2160,66 1855 2665 Total Makespan (sec) 6653 6975 6655 Average Report Generation (sec) 77 355 35 Total Delays 21 75 0 SLA Adherance (%) 28 0 100 total makespan is similar as for the over-provisioning scenario and 5 % faster than the underprovisioning

Slide 18

Slide 18 text

Evaluation Results 18 Elastic Provisioning Under provisioning Over Provisioning Cost for Processing Nodes 2160,66 1855 2665 Total Makespan (sec) 6653 6975 6655 Average Report Generation (sec) 77 355 35 Total Delays 21 75 0 SLA Adherance (%) 28 0 100 Average report generation is 4.3 times faster than for the underprovisioning scenario only 2 times as for the over-provisioning one

Slide 19

Slide 19 text

Evaluation Results 19 Elastic Provisioning Under provisioning Over Provisioning Cost for Processing Nodes 2160,66 1855 2665 Total Makespan (sec) 6653 6975 6655 Average Report Generation (sec) 77 355 35 Total Delays 21 75 0 SLA Adherance (%) 28 0 100 Average report generation duration is slightly above the SLA

Slide 20

Slide 20 text

Evaluation Results 20

Slide 21

Slide 21 text

Evaluation Results 21

Slide 22

Slide 22 text

Conclusion 22

Slide 23

Slide 23 text

Requirements Revisited • Inherent hybrid cloud support to consider legal and business related regulations • Reconfiguration at runtime • Computational resource elasticity • Cost efficiency 23 ✔ ✔ ✔ ✔

Slide 24

Slide 24 text

Lessons Learned • Threshold-based resource allocation can lead to delays and impact the QoS negatively • VM based provisioning causes delays due to the long startup duration • Redundant infrastructure of Operator Nodes cause high computational resource requirements 24

Slide 25

Slide 25 text

Outlook • Investigate towards predictive scheduling approaches • Implement a more lightweight system design • Pool the Operator Node infrastructure to reduce the computational overhead 25 https://github.com/chochreiner/VISP-Runtime

Slide 26

Slide 26 text

Q & A Christoph Hochreiner [email protected]

Slide 27

Slide 27 text

Backup Slides 27

Slide 28

Slide 28 text

Elastic Resource Provisioning min X p2P pi + X p2P piBT U + u · N + d · N pi piBT U u d Specific processing node Remaining BTU for a specific processing Node Upscaling decision variable Downscaling decision variable