Apache Storm Christopher Little Apache Storm Alternatives Storm - - PowerPoint PPT Presentation

apache storm
SMART_READER_LITE
LIVE PREVIEW

Apache Storm Christopher Little Apache Storm Alternatives Storm - - PowerPoint PPT Presentation

Real-time Web Marketing with Apache Storm Christopher Little Apache Storm Alternatives Storm Hadoop Spark Streaming Processing Model DAG MapReduce DAG Processing Unit Record-at-a-time Batch Mini Batch Latency Sub-second High Few


slide-1
SLIDE 1

Real-time Web Marketing with

Apache Storm

Christopher Little

slide-2
SLIDE 2

Apache Storm

slide-3
SLIDE 3

Alternatives

Storm Hadoop Spark Streaming Processing Model DAG MapReduce DAG Processing Unit Record-at-a-time Batch Mini Batch Latency Sub-second High Few seconds Fault Tolerance At least once Exactly once Exactly once

slide-4
SLIDE 4

Architecture (cluster)

Nimbus Zookeeper Zookeeper Supervisor Supervisor Supervisor Worker Process Worker Process Worker Process Worker Process

slide-5
SLIDE 5

Architecture (cluster)

Nimbus Zookeeper Zookeeper Supervisor Supervisor Supervisor Worker Process Worker Process Worker Process Worker Process

slide-6
SLIDE 6

Architecture (work) Spout Spout

Bolt Bolt Bolt Bolt

slide-7
SLIDE 7

Architecture (work) Spout Spout

Bolt Bolt Bolt Bolt

(x, y, z)

slide-8
SLIDE 8

Architecture (work) Spout Spout

Bolt Bolt Bolt Bolt

(x, y, z)

x3 x5 x1 x8 x3 x10

slide-9
SLIDE 9

Example Topology - Wordcount Spout

Split Count

(“Mary had a little Mary”) x5 x8 x12 (“Mary”) (“had”) (“a”) (“little”) (“Mary”) (“Mary”, 1) (“had”, 1) (“a”, 1) (“little”, 1) (“Mary”, 2)

slide-10
SLIDE 10

Example Topology - Wordcount Spout

Split Count

(“Mary had a little Mary”) x5 x8 x12 (“Mary”) (“had”) (“a”) (“little”) (“Mary”) (“Mary”, 1) (“had”, 1) (“a”, 1) (“little”, 1) (“Mary”, 2)

slide-11
SLIDE 11

Example Topology - Wordcount Spout

Split Count

(“Mary had a little Mary”) x5 x8 x12 (“Mary”) (“had”) (“a”) (“little”) (“Mary”) (“Mary”, 1) (“had”, 1) (“a”, 1) (“little”, 1) (“Mary”, 2) Shuffle() Group(0)

slide-12
SLIDE 12

Application

slide-13
SLIDE 13
slide-14
SLIDE 14

“there is a strong relationship between gaze position and cursor position”

  • Chen et al. (2001)
slide-15
SLIDE 15

Web Analytics

JavaScript Client

Spout

Heat Map

Event Stream

  • Clicks
  • Mouse movements
  • Scroll event
  • Form interaction
  • Links followed

Realtime Processing

  • Filtering
  • Windowing
  • Aggregation
slide-16
SLIDE 16

Session Windowing Example

(k1, (v1, 13:02)) (k2, (v2, 13:14)) (k1, (v3, 13:57)) (k1, (v4, 13:20)) (k1, (v1, [13:02, 13:32])) (k2, (v2, [13:14, 13:44])) (k1, (v3, [13:57, 14:27])) (k1, (v4, [13:20, 13:50])) (k1, ([(v1, [13:02, 13:32]) ,(v3, [13:57, 14:27]) ,(v4, [13:20, 13:50])])) (k2, ([(v2, [13:14, 13:44])])) (k1, ([v1, v4], [13:02, 13:50])) (k1, ([v3], [13:57, 14:27])) (k2, ([v2], [13:14, 13:44]))

ParDo ParDo GroupByKey

AssignWindows M e r g e W i n d

  • w

s MergeWindows

slide-17
SLIDE 17

Real-time Web Marketing with

Apache Storm

Christopher Little