Frontier: Resilient Edge Processing for the Internet of Things Dan - - PowerPoint PPT Presentation

frontier resilient
SMART_READER_LITE
LIVE PREVIEW

Frontier: Resilient Edge Processing for the Internet of Things Dan - - PowerPoint PPT Presentation

Frontier: Resilient Edge Processing for the Internet of Things Dan OKeeffe, Theodoros Salonidis, and Peter Pietzuch Presented by Tejas Kannan, 31/10/2018 Motivation IoT systems often offload stream computation to the cloud Edge Device


slide-1
SLIDE 1

Frontier: Resilient Edge Processing for the Internet of Things

Dan O’Keeffe, Theodoros Salonidis, and Peter Pietzuch Presented by Tejas Kannan, 31/10/2018

slide-2
SLIDE 2

Motivation

2

Edge Device Edge Device Edge Device

IoT systems often offload stream computation to the cloud

Measurement Data

slide-3
SLIDE 3

Motivation

3

Edge Device Edge Device Edge Device

Increased CPU and memory capabilities of modern devices enables processing to occur without offloading to the cloud

Measurement Data

slide-4
SLIDE 4

Requirements of an Edge Deployment Model

Requir irement Frontier’s Solution

Continuously process streaming data Move computation to edge devices Data-parallel processing Replicate data operators Adapt to changing network conditions Backpressure Stream Routing (BSR) Recover from transient network failures Selective Network Aware rePlay (SNAP)

4

slide-5
SLIDE 5

Stream Query Computational Model

Queries can be represented by a directed graph where vertices are

  • perations and edges are streams

5

Osource O1 O2 Osink S1 S3 S2

slide-6
SLIDE 6

Frontier’s Replicated Dataflow Graph

Each replica can be placed on a different edge device to enable better data parallelism

6

Osource Osink O2 O1,1 O1,0 O1 O2,1 O2,0

slide-7
SLIDE 7

Properties of Stream Query Routing

  • 1. Window-Based: Operators may act on windows of streams
  • 2. Out-of-order: Processing must be able to cope with out-of-order

delivery to maintain high throughput

  • 3. Multi-Input: Operators may accept multiple input streams, so

windows from input streams must be sent to same replica

  • 4. Batched Windows: Stream windows may be batched to reduce

network communication

7

slide-8
SLIDE 8

Backpressure Stream Routing

Backpressure routing enables adaptability to network conditions

8

  • i

Outgoing Queue

Queue Rate: qi

dj

Processing Rate: pj

Network Link

Network Rate: rij

Outgoing Queue

Queue Rate: qj

Weight of link is wij = max(0, (qi - qj) x rij x pj) Downstream replica with highest weight is chosen

slide-9
SLIDE 9

Backpressure Stream Routing

To coordinate windows for multi-input operators, routing is based on aggregate weights over all destination replicas

9

Osrc,1 Osrc,0 Osrc O1,1 O1,0 O1 wagg[O1,0] > wagg[O1,1]

Routing constraints are used to handle out of order arrival

slide-10
SLIDE 10

Selective Network-Aware Replay (SNAP)

10

Batches are buffered by senders and re-sent upon discovery of a single failed node Osrc O1,0 O1,1 O2,0 O2,1 Osnk

b1 b2

O1 O2

Diagram from [4]

slide-11
SLIDE 11

Selective Network-Aware Replay (SNAP)

11

Batches are buffered by senders and re-sent upon discovery of a single failed node Osrc O1,0 O1,1 O2,0 O2,1 Osnk

b1 b2

O1 O2

b1

Diagram from [4]

slide-12
SLIDE 12

Selective Network-Aware Replay (SNAP)

12

Heartbeat messages indicate which batches have been sent downstream, batches not replayed if heartbeats continue to be sent Osrc O1,0 O1,1 O2,0 O2,1 Osnk

b2

O1 O2

b1 b1

Diagram from [4]

slide-13
SLIDE 13

Experimental Setup

  • Experiments run on a wireless network of

Raspberry Pi’s

  • Two different networks created: high and low

diversity

  • CORE/EMANE [3] wireless network emulator

also used

  • Three different queries: Distributed Face

Recognition, Video Correlation, Heatmap of Users in Area

13

High-diversity Mesh Network

slide-14
SLIDE 14

Experiments: Throughput

14

Varying Replication Factor BSR Compared to Baselines Varying Replication Factor and Batch Size BSR Path Diversity with Different Replication

slide-15
SLIDE 15

Experiments: Latency

15

Latency with Varying Replication Factor (Error bars show 5/25/50/75/95 percentiles) Latency of BSR Compared to Baselines

slide-16
SLIDE 16

Experiments: Recovering from Failure

Distributed Face Recognition

16

Video Correlation Heatmap

Larger replication factors generally lead to higher throughput in the face

  • f failure
slide-17
SLIDE 17

Experiments: Frontier vs. Apache Flink

Frontier vs Flink [1] and Round Robin on Face Recognition Query

17

Frontier generally exhibits a higher throughput than that of other stream processing systems

slide-18
SLIDE 18

Critique

  • Method of computing aggregate BSR weights is never explained
  • Experimentation is robust but minimal comparison of Frontier to other

platforms

  • Possible area of future work: making BSR predictive of network

conditions could ease tension between using larger batches and updating network parameters

18

slide-19
SLIDE 19

Related Work

19

Platform Name Description How Frontier is Different

Spark Streaming [7] Cluster-based, structures computation as stateless batch computations Spark Streaming assumes wired connections between nodes SBON [5] Manages operator placement to efficiently use network resources SBON does not replicate

  • perators and use backpressure

to load balance on these replicas CSA [6] Stream processing for IoT systems which relies on single nodes on network edge CSA does not distribute computation across devices

slide-20
SLIDE 20

Conclusion

  • Frontier is a stream evaluation platform which performs computation
  • n edge devices
  • Achieves data-level parallelism by replicating operators and

distributing execution across devices

  • Uses network-aware routing to efficiently use resources in wireless

settings

  • Recovers from transient errors without causing network congestion

20

slide-21
SLIDE 21

References

[1] Apache flink. https://flink.apache.org/. [2] Apache storm. https://storm.apache.org/. [3] Jeff Ahrenholz. Comparison of core network emulation platforms. In Military Communications Conference, 2010-MILCOM 2010, pages 166–171. IEEE, 2010. [4] Dan O’Keeffe, Theodoros Salonidis, and Peter Pietzuch. Frontier: resilient edge processing for the internet of things. Proceedings of the VLDB Endowment, 11(10):1178–1191, 2018. [5] Peter Pietzuch, Jonathan Ledlie, Jeffrey Shneidman, Mema Roussopoulos, Matt Welsh, and Margo Seltzer. Network-aware operator placement for stream-processing systems. In Data Engineering, 2006. ICDE’06. IEEE, 2006. [6] Zhitao Shen, Vikram Kumaran, Michael J Franklin, Sailesh Krishnamurthy, Amit Bhat, Madhu Kumar,Robert Lerche, and Kim Macpherson. Csa: Streaming engine for internet of things. IEEE Data Eng.Bull., 38(4):39–50, 2015. [7] Matei Zaharia, Tathagata Das, Haoyuan Li, Timothy Hunter, Scott Shenker, and Ion Stoica. Discretized streams: Fault-tolerant streaming computation at scale. In Proceedings of the Twenty- Fourth ACM Symposium on Operating Systems Principles, pages 423–438. ACM, 2013.

21