SlideShare a Scribd company logo
FFWD: latency-aware event stream processing
via domain-specific load-shedding policies
R. Brondolin, M. Ferroni, M. D. Santambrogio
2016 IEEE 14th International Conference on Embedded and Ubiquitous Computing (EUC)
1
Outline 2
• Stream processing engines and real-time sentiment analysis
• Problem definition and proposed solution
• FFWD design
• Load-Shedding components
• Experimental evaluation
• Conclusion and future work
Introduction 3
• Stream processing engines (SPEs) are scalable tools that
process continuous data streams. They are widely used for
example in network monitoring and telecommunication
• Sentiment analysis is the process of determining the
emotional tone behind a series of words, in our case Twitter
messages
Real-time sentiment analysis 4
• Real-time sentiment analysis allows to:
– Track the sentiment of a topic over time
– Correlate real world events and related sentiment, e.g.
• Toyota crisis (2010) [1]
• 2012 US Presidential Election Cycle [2]
– Track online evolution of companies reputation, derive social
profiling and allow enhanced social marketing strategies
[1] Bifet Figuerol, Albert Carles, et al. "Detecting sentiment change in Twitter streaming data." Journal of Machine Learning Research:
Workshop and Conference Proceedings Series. 2011.
[2] Wang, Hao, et al. "A system for real-time twitter sentiment analysis of 2012 us presidential election cycle." Proceedings of the ACL
2012 System Demonstrations.
Case Study 5
• Simple Twitter streaming sentiment analyzer with Stanford NLP
• System components:
– Event producer
– RabbitMQ queue
– Event consumer
• Consumer components:
– Event Capture
– Sentiment Analyzer
– Sentiment Aggregator
• Real-time queue consumption, aggregated metrics emission each second
(keywords and hashtag sentiment)
Problem definition (1) 6
• Our sentiment analyzer is a streaming system with a finite queue
• Unpredictable arrival rate λ(t)
• Limited service rate μ(t)
S
λ(t) μ(t)
• If λ(t) limited -> λ(t) ≃ μ(t)
• Stable system
• Limited response time
Problem definition (2) 7
• If λ(t) increases too much -> λ(t) >> μ(t)
• The queue starts to fill
• Response time increases…
S
λ(t) μ(t)
• Our sentiment analyzer is a streaming system with a finite queue
• Unpredictable arrival rate λ(t)
• Limited service rate μ(t)
Problem definition (2) 8
• … until the system looses its real-time behavior
S
λ(t) μ(t)
• Our sentiment analyzer is a streaming system with a finite queue
• Unpredictable arrival rate λ(t)
• Limited service rate μ(t)
Proposed solution 9
• Scale-out?
– however limited to the available machines
• What if we try to drop tweets?
– Keep bounded the response time
– Try to minimize the number of dropped tweets
– Try to minimize the error between the exact computation and the
approximated one
• Use probabilistic approach to load shedding
• domain-specific policies to enhance the accuracy in
estimation
Fast Forward With Degradation (FFWD)
• FFWD adds four components:
10
Event
Capture
Sentiment
Analyzer
Sentiment
Aggregator
account metrics
output metrics
analyze event
Producer
eventinput tweets
real-time queue
Fast Forward With Degradation (FFWD) 13
• FFWD adds four components:
– Load shedding filter at the beginning of the pipeline
– Shedding plan used by the filter
– Domain-specific policy wrapper
– Application controller manager to detect load peaks
Producer
Load Shedding
Filter
Event
Capture
Sentiment
Analyzer
Sentiment
Aggregator
Policy
Wrapper
Controller
Shedding
Plan
real-time queue
ok
ko
ko count
account metrics
λ(t) R(t)
stream statsupdated plan
μ(t+1)
event output metricsinput tweets
drop probability
Rt
analyze event
Controller 14
S:
(Little’s	Law)
(Jobs	in	the	system)
The	system	can	be	characterized	by	its	response	time	and	the	jobs	in	the	system
Control	error:
Requested	throughput:
The	requested	throughput	is	used	by	the	load	shedding	policies	to	derive	the	LS	probabilities
Controller
Controller 15
S:
(Little’s	Law)
(Jobs	in	the	system)
The	system	can	be	characterized	by	its	response	time	and	the	jobs	in	the	system
Control	error:
Requested	throughput:
The	requested	throughput	is	used	by	the	load	shedding	policies	to	derive	the	LS	probabilities
Old	response	time Target	response	time
Controller
Controller 16
S:
(Little’s	Law)
(Jobs	in	the	system)
The	system	can	be	characterized	by	its	response	time	and	the	jobs	in	the	system
Control	error:
Requested	throughput:
The	requested	throughput	is	used	by	the	load	shedding	policies	to	derive	the	LS	probabilities
Requested	throughput Arrival	rate
Controller
Control	error
Policies
• Baseline: General drop probability computed from the 

requested throughput
17
en the event
e component
a drop queue
n to perform
pecific Policy
computes the
erence signal
µ(t) = (t 1) µmax · e(t) (6)
U(t) = ¯U (7)
P(X) = 1
µc(t 1)
µ(t)
(8)
Policy
Wrapper
Policies
• Baseline: General drop probability computed from the 

requested throughput
• Fair: Assign to each input class the “same" number of events
– Save metrics of small classes, still accurate results on big ones
18
en the event
e component
a drop queue
n to perform
pecific Policy
computes the
erence signal
µ(t) = (t 1) µmax · e(t) (6)
U(t) = ¯U (7)
P(X) = 1
µc(t 1)
µ(t)
(8)
Policy
Wrapper
Policies
• Baseline: General drop probability computed from the 

requested throughput
• Fair: Assign to each input class the “same" number of events
– Save metrics of small classes, still accurate results on big ones
• Priority: Assign a priority to each input class
– Divide events depending on the priorities
– General case of Fair policy
19
en the event
e component
a drop queue
n to perform
pecific Policy
computes the
erence signal
µ(t) = (t 1) µmax · e(t) (6)
U(t) = ¯U (7)
P(X) = 1
µc(t 1)
µ(t)
(8)
Policy
Wrapper
Filter 20
• For each event in the system:
– looks for probabilities in shedding plan using its meta-data
– if not found uses general drop probability
Load Shedding
Filter
Load Shedding
Filter
Shedding
Plan
real-time queue
batch queue
ok
ko
drop probability
Event
Capture
• If specified, the dropped events are placed in a different
queue for a later analysis
Evaluation setup 21
• Separate tests to understand FFWD behavior:
– Controller performance
– Policy and degradation evaluation
• Dataset: 900K tweets of 35th week of Premier League
• Performed tests:
– Controller: synthetic and real tweets at various λ(t)
– Policy: real tweets at various λ(t)
• Evaluation setup
– Intel core i7 3770, 4 cores @ 3.4 Ghz + HT, 8MB LLC
– 8 GB RAM @ 1600 Mhz
Controller Performance 22
case	A:	λ(t)	=	λ(t-1)
case	B:	λ(t)	=	avg(λ(t))
λ(t)	estimation:
Controller showcase (1)
• Controller demo (Rt = 5s):
– λ(t) increased after 60s and 240s
– response time:
23
0
1
2
3
4
5
6
7
0 50 100 150 200 250 300
Responsetime(s)
time (s)
Controller performance
QoS = 5s
R
Controller showcase (2)
• Controller demo (Rt = 5s):
– λ(t) increased after 60s and 240s
– throughput:
24
0
100
200
300
400
500
0 50 100 150 200 250 300
#Events
time (s)
Actuation
lambda
dropped
computed
mu
Degradation Evaluation 25
• Real tweets, μc(t) ≃ 40 evt/s
• Evaluated policies:
• Baseline
• Fair
• Priority
• R = 5s, λ(t) = 100 evt/s, 200 evt/s, 400 evt/s
• Error metric: Mean Absolute Percentage
Error (MAPE %) (lower is better)
0
10
20
30
40
50
A B C D
MAPE(%)
Groups
baseline_error
fair_error
priority_error
λ(t) = 100 evt/s
0
10
20
30
40
50
A B C D
MAPE(%)
Groups
baseline_error
fair_error
priority_error
λ(t) = 200 evt/s
0
10
20
30
40
50
A B C D
MAPE(%)
Groups
baseline_error
fair_error
priority_error
λ(t) = 400 evt/s
Conclusions and future work 26
• We saw the main challenges of stream processing for real-
time sentiment analysis
• Fast Forward With Degradation (FFWD)
– Heuristic controller for bounded response time
– Pluggable policies for domain-specific load shedding
– Accurate computation of metrics
– Simple Load Shedding Filter for fast drop
• Future work
– Controller generalization, to cope with other control metrics
(CPU)
– Predictive modeling of the arrival rate
– Explore different fields of application, use cases and policies
Any questions? 27

More Related Content

PDF
FFWD - Fast Forward With Degradation
PPTX
Synchronization
PDF
Ds practical file
PDF
Distributed computing time
PPTX
Distributed system lamport's and vector algorithm
PDF
Self-adaptive container monitoring with performance-aware Load-Shedding policies
PPTX
ODSC 2019: Sessionisation via stochastic periods for root event identification
PPTX
The Case for a Signal Oriented Data Stream Management System
FFWD - Fast Forward With Degradation
Synchronization
Ds practical file
Distributed computing time
Distributed system lamport's and vector algorithm
Self-adaptive container monitoring with performance-aware Load-Shedding policies
ODSC 2019: Sessionisation via stochastic periods for root event identification
The Case for a Signal Oriented Data Stream Management System

What's hot (20)

PPT
Chap 5
PPTX
Vector clock algorithm
PPTX
Tutorial: The Role of Event-Time Analysis Order in Data Streaming
PPTX
Crash course on data streaming (with examples using Apache Flink)
PPT
Clocks
PPT
DOC
Distributed Mutual exclusion algorithms
PPTX
The data streaming processing paradigm and its use in modern fog architectures
PPTX
BIRTE-13-Kawashima
PPT
Chapter 10
PPT
clock synchronization in Distributed System
PPT
Clock synchronization in distributed system
PPT
Clock Synchronization (Distributed computing)
PPTX
Synchronization Pradeep K Sinha
PDF
Real time intrusion detection in network traffic using adaptive and auto-scal...
PPT
Synchronization in distributed systems
PPTX
PPTX
Synchronization
PDF
Clock Synchronization in Distributed Systems
Chap 5
Vector clock algorithm
Tutorial: The Role of Event-Time Analysis Order in Data Streaming
Crash course on data streaming (with examples using Apache Flink)
Clocks
Distributed Mutual exclusion algorithms
The data streaming processing paradigm and its use in modern fog architectures
BIRTE-13-Kawashima
Chapter 10
clock synchronization in Distributed System
Clock synchronization in distributed system
Clock Synchronization (Distributed computing)
Synchronization Pradeep K Sinha
Real time intrusion detection in network traffic using adaptive and auto-scal...
Synchronization in distributed systems
Synchronization
Clock Synchronization in Distributed Systems
Ad

Similar to [EUC2016] FFWD: latency-aware event stream processing via domain-specific load-shedding policies (20)

PDF
Self-adaptive container monitoring with performance-aware Load-Shedding policies
PDF
Sample final report
PDF
IRJET- Trend Analysis on Twitter
PDF
Emotion Recognition By Textual Tweets Using Machine Learning
PDF
Real Time Systems
PDF
Scheduling Fixed Priority Tasks with Preemption Threshold
PDF
Social Sensor for Real Time Event Detection
PPTX
General pipeline concepts
PPTX
Feedback Queueing Models for Time Shared Systems
PDF
Laser 1-background
PDF
Self-adaptive container monitoring with performance-aware Load-Shedding policies
PPTX
Political Prediction Analysis using text mining and deep learning.pptx
PPTX
Political prediction analysis using text mining and deep learning
PPTX
Processing Flows of Information DEBS 2011
PDF
Self-adaptive container monitoring with performance-aware Load-Shedding policies
PDF
Lecture set 6
PPT
Debs 2011 pattern rewritingforeventprocessingoptimization
PPTX
Copie de Academic report of thesis defense_a9180e94e4 from slidesdocs.com (1)...
PPTX
Examples of working with streaming data
PPTX
Lecture 1 of system simulation and modulation.pptx
Self-adaptive container monitoring with performance-aware Load-Shedding policies
Sample final report
IRJET- Trend Analysis on Twitter
Emotion Recognition By Textual Tweets Using Machine Learning
Real Time Systems
Scheduling Fixed Priority Tasks with Preemption Threshold
Social Sensor for Real Time Event Detection
General pipeline concepts
Feedback Queueing Models for Time Shared Systems
Laser 1-background
Self-adaptive container monitoring with performance-aware Load-Shedding policies
Political Prediction Analysis using text mining and deep learning.pptx
Political prediction analysis using text mining and deep learning
Processing Flows of Information DEBS 2011
Self-adaptive container monitoring with performance-aware Load-Shedding policies
Lecture set 6
Debs 2011 pattern rewritingforeventprocessingoptimization
Copie de Academic report of thesis defense_a9180e94e4 from slidesdocs.com (1)...
Examples of working with streaming data
Lecture 1 of system simulation and modulation.pptx
Ad

More from Matteo Ferroni (7)

PDF
Fight data gravity with event-driven architectures
PDF
[Droidcon Italy 2017] Client and server, 3 meters above the cloud
PDF
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...
PDF
[EUC2016] DockerCap: a software-level power capping orchestrator for Docker c...
PDF
[February 2017 - Ph.D. Final Dissertation] Enabling Power-awareness For Multi...
PDF
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
PDF
[EUC2014] cODA: An Open-Source Framework to Easily Design Context-Aware Andro...
Fight data gravity with event-driven architectures
[Droidcon Italy 2017] Client and server, 3 meters above the cloud
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...
[EUC2016] DockerCap: a software-level power capping orchestrator for Docker c...
[February 2017 - Ph.D. Final Dissertation] Enabling Power-awareness For Multi...
[EWiLi2016] Enabling power-awareness for the Xen Hypervisor
[EUC2014] cODA: An Open-Source Framework to Easily Design Context-Aware Andro...

Recently uploaded (20)

PDF
System and Network Administraation Chapter 3
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
System and Network Administration Chapter 2
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
Introduction to Artificial Intelligence
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPT
Introduction Database Management System for Course Database
PPTX
history of c programming in notes for students .pptx
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
medical staffing services at VALiNTRY
System and Network Administraation Chapter 3
Which alternative to Crystal Reports is best for small or large businesses.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Adobe Illustrator 28.6 Crack My Vision of Vector Design
System and Network Administration Chapter 2
L1 - Introduction to python Backend.pptx
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Design an Analysis of Algorithms I-SECS-1021-03
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Upgrade and Innovation Strategies for SAP ERP Customers
Introduction to Artificial Intelligence
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Introduction Database Management System for Course Database
history of c programming in notes for students .pptx
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PTS Company Brochure 2025 (1).pdf.......
Odoo Companies in India – Driving Business Transformation.pdf
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
Designing Intelligence for the Shop Floor.pdf
medical staffing services at VALiNTRY

[EUC2016] FFWD: latency-aware event stream processing via domain-specific load-shedding policies

  • 1. FFWD: latency-aware event stream processing via domain-specific load-shedding policies R. Brondolin, M. Ferroni, M. D. Santambrogio 2016 IEEE 14th International Conference on Embedded and Ubiquitous Computing (EUC) 1
  • 2. Outline 2 • Stream processing engines and real-time sentiment analysis • Problem definition and proposed solution • FFWD design • Load-Shedding components • Experimental evaluation • Conclusion and future work
  • 3. Introduction 3 • Stream processing engines (SPEs) are scalable tools that process continuous data streams. They are widely used for example in network monitoring and telecommunication • Sentiment analysis is the process of determining the emotional tone behind a series of words, in our case Twitter messages
  • 4. Real-time sentiment analysis 4 • Real-time sentiment analysis allows to: – Track the sentiment of a topic over time – Correlate real world events and related sentiment, e.g. • Toyota crisis (2010) [1] • 2012 US Presidential Election Cycle [2] – Track online evolution of companies reputation, derive social profiling and allow enhanced social marketing strategies [1] Bifet Figuerol, Albert Carles, et al. "Detecting sentiment change in Twitter streaming data." Journal of Machine Learning Research: Workshop and Conference Proceedings Series. 2011. [2] Wang, Hao, et al. "A system for real-time twitter sentiment analysis of 2012 us presidential election cycle." Proceedings of the ACL 2012 System Demonstrations.
  • 5. Case Study 5 • Simple Twitter streaming sentiment analyzer with Stanford NLP • System components: – Event producer – RabbitMQ queue – Event consumer • Consumer components: – Event Capture – Sentiment Analyzer – Sentiment Aggregator • Real-time queue consumption, aggregated metrics emission each second (keywords and hashtag sentiment)
  • 6. Problem definition (1) 6 • Our sentiment analyzer is a streaming system with a finite queue • Unpredictable arrival rate λ(t) • Limited service rate μ(t) S λ(t) μ(t) • If λ(t) limited -> λ(t) ≃ μ(t) • Stable system • Limited response time
  • 7. Problem definition (2) 7 • If λ(t) increases too much -> λ(t) >> μ(t) • The queue starts to fill • Response time increases… S λ(t) μ(t) • Our sentiment analyzer is a streaming system with a finite queue • Unpredictable arrival rate λ(t) • Limited service rate μ(t)
  • 8. Problem definition (2) 8 • … until the system looses its real-time behavior S λ(t) μ(t) • Our sentiment analyzer is a streaming system with a finite queue • Unpredictable arrival rate λ(t) • Limited service rate μ(t)
  • 9. Proposed solution 9 • Scale-out? – however limited to the available machines • What if we try to drop tweets? – Keep bounded the response time – Try to minimize the number of dropped tweets – Try to minimize the error between the exact computation and the approximated one • Use probabilistic approach to load shedding • domain-specific policies to enhance the accuracy in estimation
  • 10. Fast Forward With Degradation (FFWD) • FFWD adds four components: 10 Event Capture Sentiment Analyzer Sentiment Aggregator account metrics output metrics analyze event Producer eventinput tweets real-time queue
  • 11. Fast Forward With Degradation (FFWD) 13 • FFWD adds four components: – Load shedding filter at the beginning of the pipeline – Shedding plan used by the filter – Domain-specific policy wrapper – Application controller manager to detect load peaks Producer Load Shedding Filter Event Capture Sentiment Analyzer Sentiment Aggregator Policy Wrapper Controller Shedding Plan real-time queue ok ko ko count account metrics λ(t) R(t) stream statsupdated plan μ(t+1) event output metricsinput tweets drop probability Rt analyze event
  • 15. Policies • Baseline: General drop probability computed from the 
 requested throughput 17 en the event e component a drop queue n to perform pecific Policy computes the erence signal µ(t) = (t 1) µmax · e(t) (6) U(t) = ¯U (7) P(X) = 1 µc(t 1) µ(t) (8) Policy Wrapper
  • 16. Policies • Baseline: General drop probability computed from the 
 requested throughput • Fair: Assign to each input class the “same" number of events – Save metrics of small classes, still accurate results on big ones 18 en the event e component a drop queue n to perform pecific Policy computes the erence signal µ(t) = (t 1) µmax · e(t) (6) U(t) = ¯U (7) P(X) = 1 µc(t 1) µ(t) (8) Policy Wrapper
  • 17. Policies • Baseline: General drop probability computed from the 
 requested throughput • Fair: Assign to each input class the “same" number of events – Save metrics of small classes, still accurate results on big ones • Priority: Assign a priority to each input class – Divide events depending on the priorities – General case of Fair policy 19 en the event e component a drop queue n to perform pecific Policy computes the erence signal µ(t) = (t 1) µmax · e(t) (6) U(t) = ¯U (7) P(X) = 1 µc(t 1) µ(t) (8) Policy Wrapper
  • 18. Filter 20 • For each event in the system: – looks for probabilities in shedding plan using its meta-data – if not found uses general drop probability Load Shedding Filter Load Shedding Filter Shedding Plan real-time queue batch queue ok ko drop probability Event Capture • If specified, the dropped events are placed in a different queue for a later analysis
  • 19. Evaluation setup 21 • Separate tests to understand FFWD behavior: – Controller performance – Policy and degradation evaluation • Dataset: 900K tweets of 35th week of Premier League • Performed tests: – Controller: synthetic and real tweets at various λ(t) – Policy: real tweets at various λ(t) • Evaluation setup – Intel core i7 3770, 4 cores @ 3.4 Ghz + HT, 8MB LLC – 8 GB RAM @ 1600 Mhz
  • 21. Controller showcase (1) • Controller demo (Rt = 5s): – λ(t) increased after 60s and 240s – response time: 23 0 1 2 3 4 5 6 7 0 50 100 150 200 250 300 Responsetime(s) time (s) Controller performance QoS = 5s R
  • 22. Controller showcase (2) • Controller demo (Rt = 5s): – λ(t) increased after 60s and 240s – throughput: 24 0 100 200 300 400 500 0 50 100 150 200 250 300 #Events time (s) Actuation lambda dropped computed mu
  • 23. Degradation Evaluation 25 • Real tweets, μc(t) ≃ 40 evt/s • Evaluated policies: • Baseline • Fair • Priority • R = 5s, λ(t) = 100 evt/s, 200 evt/s, 400 evt/s • Error metric: Mean Absolute Percentage Error (MAPE %) (lower is better) 0 10 20 30 40 50 A B C D MAPE(%) Groups baseline_error fair_error priority_error λ(t) = 100 evt/s 0 10 20 30 40 50 A B C D MAPE(%) Groups baseline_error fair_error priority_error λ(t) = 200 evt/s 0 10 20 30 40 50 A B C D MAPE(%) Groups baseline_error fair_error priority_error λ(t) = 400 evt/s
  • 24. Conclusions and future work 26 • We saw the main challenges of stream processing for real- time sentiment analysis • Fast Forward With Degradation (FFWD) – Heuristic controller for bounded response time – Pluggable policies for domain-specific load shedding – Accurate computation of metrics – Simple Load Shedding Filter for fast drop • Future work – Controller generalization, to cope with other control metrics (CPU) – Predictive modeling of the arrival rate – Explore different fields of application, use cases and policies