SlideShare ist ein Scribd-Unternehmen logo
1 von 130
Event processing – State of the art and research challenges  AAAI 2011 Tutorial,  San Francisco, August 7 th , 2011  Opher Etzion ( [email_address] ) Yagil Engel ( [email_address] )
Slides available at: ie.technion.ac.il/~yagile/EP_Tutorial.pdf
Imagine that… A driver gets notification on the car screen: the person crossing the street is an Alzheimer patient out of his regular route, he lives in 5 King Street.  A national park gets information on all cars heading to the park from the car computer; can open more parking lots and notify cars that the park will be closed.
Agenda Introduction and roots of event processing  Players and architecture of event processing Current state of the art in event processing  Challenges in event processing systems Summary  I II III IV V
I: Introduction and roots of event processing
What is  “event processing” anyway? or Event processing is a form of computing that performs operations on  events
In computing we processed events since early days  Network and System Management
Emerging technologies in enterprise computing (Gartner Hype Cycle, Summer 2009)
What ’s new? The analog: moving from files to DBMS  In recent years – architectures, abstractions, and dedicated  commercial products emerge to support functionality that was traditionally carried out within regular programming.  For some applications it is an improvement in TCO; for others is  breaking the cost-effectiveness barrier.
What is an event – three views  An event  is anything that happens, or is contemplated as  happening.  The happening view The state change view An event is a state of change of anything The detectable condition  view An event is a detectable condition that can trigger a notification
In daily life we often react to events..
Many times we react to combination of events within a context  The house sensor detects that the child did not arrive home  within 2 hours from the scheduled end of classes for the day I want to be notified when my own investment portfolio is down 5%  since the start of the trading Day ;  have an agent call me  when I am available ,  send SMS when  I am in a meeting , and Email when I am out of office .
Event Patterns Pattern detection is one of the notable functions of event processing
What we actually want to react to are – situations  TOLL VILOATOR  FRUSTRATED CUSTOMER  Sometimes the situation is  determined by detecting that some pattern occurred in the Flowing events.  Toll violation  Frustrated customer Sometimes the events can  approximate or indicate with some certainty that the  situation has occurred
Event processing is being used for various reasons
Ancestor: Production Rules  When Precondition  Fire Action  The precondition is implicit event when activated in forward chaining
Ancestor: active databases  On event When condition Do action With coupling mode  Composite events were inherited to event processing
Ancestor: Data Stream management system Source: Ankur Jain ’s website
Event processing and Data stream management? Aliases? One of them subset of the other? Totally unrelated concepts?
Ancestor: Temporal databases  There is a substantial temporal  nature to event processing.  Recently – also spatial and  spatio-temporal functions are  being added
Ancestor: Discrete event simulation
Ancestor: Formal Verification
Ancestor: Network and system management
Ancestor:  Messaging – pub/sub middleware
II:  Players and architecture of event processing
Event Driven Architecture   Event driven architecture: asynchronous, decoupled; each  component is autonomic.
Fast Flower Delivery Flower Store Van Driver Ranking and Reporting  System Bid Request  Delivery Bid  Assignments, Bid alerts, Assign  Alerts Control  System   GPS Location  Location Service Location  Driver ’s Guild   Ranking and reports  Delivery  confirmation  Pick Up confirmation  Ranked drivers / automatic assignment  Bid System Store Preferences Delivery Request  Assignment  System Manual Assignment Assignment Assignments, Pick Up Alert Delivery Alert  http://www.ep-ts.com/EventProcessingInAction
Event Processing Agent Context  Event Channel Event Consumer Event Type Event Producer Global State  The seven  Building blocks
Event processing network
Example of EPN –  part of the FFD example
Event type definition  Detection time, Occurrence time, source, Certainty… Stock id, quote, volume… Free comments…
Producer – State Observer in workflows  State observer Push:  Instrumentation points; Pull: Query the state
Producer – Code instrumentation
Producer – syndication
Producers –  video streams to events
Producer – sensors
Producer and consumer - Sixth sense
Twitter as a producer and consumer
Consumer - Performance monitoring dashboard
Consumer - Ambient Orb
Event Processing Agent Filter Transform Detect Pattern Translate Aggregate Split  Compose Enrich Project Event Processing Agents
The EPA picture
Filter EPA A filter EPA is an EPA that performs filtering only, and has no matching or derivation steps, so it does not transform the input event .
Transform EPA sub types
Sample of pattern types ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Pattern detection example  Pattern name:  Manual Assignment Preparation  Pattern Type: relative N highest  Context: Bid Interval Relevant event types: Delivery Bid Pattern parameter:  N = 5;  value = Ranking Cardinality: Single deferred   Find the five highest bids within the bid interval  Taken from  the Fast Flower Delivery use case
Our entire culture is context sensitive  ,[object Object],[object Object],[object Object],When hearing concert people are not talking,  eating, and keep their mobile phone on  “silent”.
Context has three distinct roles (which may be combined)  Partition the incoming events  The events that relate to each customer are processed separately  Grouping events together  Different processing for Different context partitions Determining the processing  Grouping together events that happened in the same hour at the same location
Context Definition  A   context  is a named specification of conditions that groups event instances so that they can be processed in a related way. It assigns each event instance to one or more  context partitions . A context may have one or more context dimensions. Temporal Spatial State Oriented Segmentation Oriented
Context Types Context Fixed location Entity distance location Event distance location Spatial State Oriented Fixed interval Event interval Sliding fixed interval Sliding event interval Temporal Segmentation Oriented
Context Types Examples Spatial State Oriented Temporal Context “ Every day between 08:00 and 10:00 AM ” “ A week after borrowing a disk” “ A time window bounded by TradingDayStart and TradingDayEnd events ” “ 3 miles from the traffic accident location ” “ Within an authorized zone in a manufactory ” “ All Children 2-5 years old” “ All platinum customers” “ Airport security level is red” “ Weather is stormy” Segmentation Oriented
III: The current states of the art in event processing
An Observation The Babylon Tower symbolizes the tendency Of humanity  to talk in multiple languages. ,[object Object],[object Object],[object Object],[object Object],[object Object],The epts language analysis workgroup is aimed to understand the various styles And extract common functions that can be used to define what is an event  processing language; this tutorial is an interim report  It does not seem that we ’ll succeed to settle In the near future around a single programming style
The Babylon tower and current state of the practice
StreamBase Studio
StreamBase Pattern Matching
CCL Studio (Coral8    Sybase)
CCL – Pattern Matching ,[object Object],[object Object],Insert into  StreamAlerts  Select  StreamA.id  From  StreamA a, StreamB b, StreamC c, StreamD d  Matching  [10 seconds: a && b, c, !d]  On  a.id = b.id = c.id = d.id
Microsoft Streaminsights  var topfive = (from window in inputStream.Snapshot() from e in window orderby e.f ascending, e.i descending select e).Take(5); var avgCount = from v in inputStream group v by v.i % 4 into eachGroup from window in eachGroup.Snapshot() select new { avgNumber = window.Avg(e => e.number) };
Esper EPL  – FFD Example /* *  Not delivered up after 10 mins (600 secs) of the request target delivery time */ insert into AlertW(requestId, message, driver, timestamp) select  a.requestId, "not delivered", a.driver, current_timestamp() from pattern[ every a=Assignment    (timer:interval(600 + (a.deliveryTime-current_timestamp)/1000) and  not DeliveryConfirmation(requestId = a.requestId) and  not NoOneToReceiveMSG(requestId = a.requestId)) ];
ruleCore - Reakt ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Amit - Situation
IBM Websphere Business Events
Apama EPL – FFD Examples
Performance benchmarks There is a large variance among applications, thus a collection of benchmarks should be devised, and each application should be classified to a benchmark  Some classification criteria: Application complexity  Filtering rate Required Performance metrics
Performance benchmarks – cont. Adi A., Etzion O. Amit - the situation manager. The VLDB Journal – The International Journal on Very Large Databases. Volume 13 Issue 2, 2004. Mendes M., Bizarro P., Marques P. Benchmarking event processing systems: current state and future directions. WOSP/SIPEW 2010: 259-260 . Previous studies ‎indicate that there is a  major performance degradation  as application complexity increases.
Throughput  Input throughput output throughput Processing throughput Measures: number of input events that the system can digest within a given time interval  Measures: Total processing times / # of event processed within a given time interval   Measures: # of events that were emitted to consumers within a given time interval
Latency latency In the E2E level it is defined as the elapsed time  FROM the time-point when the producer emits an input event  TO the time-point when the consumer receives and output event  The latency definition But – input event may not result in output event: It may be filtered out, participate in a pattern but does not result in pattern detection, or participates in deferred operation (e.g. aggregation) Similar definitions for the EPA level, or path  level
Performance goals and metrics  ,[object Object],[object Object],Max throughput All/ 80% have max/avg latency <  δ All/ 90%  of time units have throughput >  Ω minmax latency minavg latency latency leveling
Scalability in event processing: various dimensions # of producers   # of input events  # of EPA types # of  concurrent  runtime instances # of  concurrent  runtime  contexts  Internal state size  # of consumers  # of derived events  Processing complexity
Scalability solutions Significant progress in scalability enablers that provides feasibility for a system based on large scale event sources, event quantities, computations and actuators  Smart placements of processing elements with dynamic load balancing   Fault tolerance techniques enable trustable automatic processing  Virtualization (scale-in)  Use of parallel processing – multi-core and GPU processors – without extra programming efforts
IV: Challenges in event processing systems
Challenges ,[object Object],[object Object],[object Object],[object Object],[object Object]
Inexact event processing
Uncertain situations  False positive: The pattern is matched; The real-world situation  does not occur  False negative: The pattern is not matched; The real-world situation  occurs
Temporal indeterminacy  T1 T2
Challenges ,[object Object],[object Object],[object Object],[object Object],[object Object]
Predictive Event Processing (1) VS. Photo by Michael Gray, Flickr
Predictive Event Processing (2) VS. +
Predictive Event Patterns ,[object Object],[object Object],[object Object],“ Output event will occur with distribution D over interval (t1,t2)” Stock decrease of > 5% in 3 hours     Good chance for 2% increase within 2 hours
Limitations of the use of rules in specifying predictive event patterns  ,[object Object],[object Object],[object Object],[object Object],Rule = hard-coded probabilistic  Relationship
Dynamic event prediction Time Series  Prediction Graphical models  Temporal Graphical models
Graphical Model for Missing a Flight (Logistics Scenario)
Predictive Model for Missing a Flight (Logistics Scenario)
Predictive Model for Missing a Flight (Logistics Scenario)
Predictive Model for Missing a Flight (Logistics Scenario)
Continuous Time Bayesian Networks (CTBN, Nodelman et al, 2002) ,[object Object]
Anomaly Detection in Networks (Xu and Shelton, 2008)
CTBN model (Xu and Shelton, 2008)
Challenges ,[object Object],[object Object],[object Object],[object Object],[object Object]
Machine Learning in EP Systems ,[object Object],[object Object],[object Object],[object Object]
Event Pattern Discovery ,[object Object],[object Object],[object Object],[object Object]
Requirements of Data Mining Algorithms ,[object Object],[object Object],[object Object],[object Object],[object Object]
Low Frequency Patterns ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Temporal Windows ,[object Object],[object Object]
Assertions and Thresholds ,[object Object],[object Object],[object Object],[object Object]
Other kinds of patterns ,[object Object],[object Object],[object Object],[object Object],[object Object]
Challenges ,[object Object],[object Object],[object Object],[object Object],[object Object]
From Reactive to Proactive
Example: Call Center Queue Assignment MDP Model: States (S) : queue status Actions (a) : assignments Reward (R) : penalty for  waiting and blocking Transition (T) : call arrival, call ending
Proactivity: Call Center Example
Proactive Event-Driven Computing (1) predict (states, events) Real-time decision  Proactive action events Event processing (filter, transform, match patterns) events Detect /  Derive Predict Decide Act events Proactive event-driven computing is a new paradigm aimed at predicting the occurrence of problems or opportunities before they occur, and changing the course of actions to mitigate or leverage them
Energy Scenario Detect   Predict Decide   Act Consumption Level Production Level State Generator Failure Generator Fixed Weather Forecast  (sun, wind, temp, storm) Consumption Forecast Production Forecast Outage Prediction Many Failed Generators   Prediction Call for Urgent  Generators Fix Activate Expensive  Diesel Generators Declare  “Peak Hours” for Tomorrow Activate Rolling  Blackout
Detect Monitor shipment progress and various related alerts (traffic, cargo handling time at airport, carriers being late) Predict According to current route, the shipment will be 3 hours late and we will incur high penalty Decide   Find alternative route which (given new condition) is faster than previous route Act   Generate cargo reservations, reroute shipment Critical Shipment Logistics
Personal reschedule  Detect   I got out of the house 20 Minutes late; there are three spots of traffic congestion on the way to the office; it is raining;  and I have an important meeting in 25 minutes!  Predict I am not going to get to the meeting, not even close! Decide   Check whether there is a qualified person for this meeting that can replace me and has lower priority task for the duration of this meeting and reschedule his/her other obligations; Alternatively, check if there Is another time-slot later on the day for which the meeting can be rescheduled  and get a decision!  Act   Notify all involved on their reschedule.
Electric car – battery replacement overload  Detect Tracking the cars driving within a certain area and  their battery status.  Predict In 2 hours the service stations in the area will be out of charged batteries. Decide   Whether there are available spare batteries nearby that can be  shipped via car, or a helicopter need to be dispatched to ship  batteries from the central store.  Act Load batteries on selected means of transportation and start the journey! Background: A company leases electric cars  that can drive up to 100 miles; it provides both personal and public  battery charge spots, and robotic battery replacement service stations as part of the lease.
Portfolio tuning  Detect Track corporate actions, news, exchange prices, and  rumors about all securities in my portfolio Predict My portfolio is going to exceed my personal risk limit within 1 hour   Decide   Mark the securities to be sold and best timing to sell, find an alternative to buy that retain the risk limit.   Act   Buy/Sell orders
Predict ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Decide ,[object Object],[object Object],Probabilistic events Analytics ,[object Object],Actions Proactive Event-Driven Computing (2)
Event Processing DM vs. AI DM ,[object Object],[object Object],[object Object]
Decision Making for Proactive E-D Computing ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Proactive EP: Challenges to the EPN ,[object Object],[object Object],[object Object],[object Object]
Challenges ,[object Object],[object Object],[object Object],[object Object],[object Object]
Correctness  The ability of a developer to create correct implementation for all cases (including the boundaries)   Observation: A substantial amount of effort is invested today in many of the tools to workaround the inability of the language to easily create correct solutions
Some correctness topics The right interpretation of language constructs  The right order of events  The right classification of events to windows
The right interpretation of language constructs – example All (E1, E2) – what do we mean? A customer both sells and buys the same security in value of more than $1M within a single day Deal fulfillment:  Package arrival and payment arrival  6/3 10:00 7/3 11:00 8/3 11:00 8/3 14:00
Fine tuning of the semantics (I) When should the derived event be emitted?  When the Pattern is matched ? At the window end?
Fine tuning of the semantics (II) How many instances of derived events should be emitted?  Only once?  Every time there is a match ?
Fine tuning of the semantics (III) What happens if the same event happens several times?  Only one – first, last, higher/lower value on some predicate?  All of them participate in a match?
Fine tuning of the semantics (IV) Can we consume or reuse events that participate in a match?
Fine tuning of semantics – conclusion  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],In other cases – explicit programming and workarounds are used if semantics intended is different than the default semantics
The right order of events - scenario ,[object Object],[object Object],[object Object],===Input Bids=== Bid Start 12:55:00 credit bid id=2,occurrence time=12:55:32,price=4  cash bid id=29,occurrence time=12:55:33,price=4 cash bid id=33,occurrence time=12:55:34,price=3 credit bid id=66,occurrence time=12:55:36,price=4 credit bid id=56,occurrence time=12:55:59,price=5 Bid End 12:56:00  ===Winning Bid=== cash bid id=29,occurrence time=12:55:33,price=4 Trace:  Race conditions: Between events; Between events and Window start/end
Ordering in a distributed environment  -  possible issues Even if the occurrence time of an event is accurate,  it might arrive after some processing has already been done If we used occurrence time of an event as reported by the sources it might not be accurate,  due to clock accuracy in the source  Most systems order event by detection time – but events may switch their order on the way
Clock accuracy in the source  Clock synchronization Time server,  example:  http:// tf.nist.gov/service/its.htm
Buffering technique ,[object Object],[object Object],[object Object],[object Object],Sorted Buffer (by occurrence time) To t > To +   Producers Event Processing ,[object Object],[object Object],[object Object]
Retrospective compensation  Out of order event Recalculation Retraction of previous EPA results Not always possible!
Classification to windows - scenario Calculate Statistics for each Player (aggregate per quarter) Calculate Statistics for each Team (aggregate per quarter) Window classification: Player statistics are calculated at the end of each quarter Team statistics are calculated at the end of each quarter based on the players events arrived within the same quarter All instances of player statistics that occur within a quarter window must be classified to the same window, even if they are derived after the window termination.
V: Summary
Event processing is an emerging  technology  Potential for mutually beneficial interaction with AI    Make the next generation A vehicle to substantially Change the world   Already attracted coverage of analysts and all major software vendors  Event Patterns It barely scratched the surface Of its potential
REFERENCES (StoA of Event Processing) ,[object Object],[object Object],[object Object],[object Object]
REFERENCES (Challenges Section) ,[object Object],[object Object],[object Object],[object Object]

Weitere ähnliche Inhalte

Andere mochten auch

Patterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservicesPatterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservicesRachel Reese
 
C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...
C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...
C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...DataStax Academy
 
09 semantic web & ontologies
09 semantic web & ontologies09 semantic web & ontologies
09 semantic web & ontologiesMarina Santini
 
Parallel Complex Event Processing
Parallel Complex Event ProcessingParallel Complex Event Processing
Parallel Complex Event ProcessingKarol Grzegorczyk
 
Event Driven Architecture (EDA), November 2, 2006
Event Driven Architecture (EDA), November 2, 2006Event Driven Architecture (EDA), November 2, 2006
Event Driven Architecture (EDA), November 2, 2006Tim Bass
 
DataStax: Rigorous Cassandra Data Modeling for the Relational Data Architect
DataStax: Rigorous Cassandra Data Modeling for the Relational Data ArchitectDataStax: Rigorous Cassandra Data Modeling for the Relational Data Architect
DataStax: Rigorous Cassandra Data Modeling for the Relational Data ArchitectDataStax Academy
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven ArchitectureLourens Naudé
 
Real World Event Sourcing and CQRS
Real World Event Sourcing and CQRSReal World Event Sourcing and CQRS
Real World Event Sourcing and CQRSMatthew Hawkins
 
Setting Up Your Event Communication Workflow Using Church360° Unite
Setting Up Your Event Communication Workflow Using Church360° UniteSetting Up Your Event Communication Workflow Using Church360° Unite
Setting Up Your Event Communication Workflow Using Church360° UniteConcordia Technology Solutions
 
Siddhi: A Second Look at Complex Event Processing Implementations
Siddhi: A Second Look at Complex Event Processing ImplementationsSiddhi: A Second Look at Complex Event Processing Implementations
Siddhi: A Second Look at Complex Event Processing ImplementationsSrinath Perera
 
Retail Merchandising and Event Set-Up
Retail Merchandising and Event Set-UpRetail Merchandising and Event Set-Up
Retail Merchandising and Event Set-Upgueste82cf2f
 
Event day disaster: A story of sucess and ice
Event day disaster: A story of sucess and iceEvent day disaster: A story of sucess and ice
Event day disaster: A story of sucess and iceLauren v.
 
Aerospike DB and Storm for real-time analytics
Aerospike DB and Storm for real-time analyticsAerospike DB and Storm for real-time analytics
Aerospike DB and Storm for real-time analyticsAerospike
 
Event Strategy: 3 Keys To An Event Strategy For More Profit
Event Strategy: 3 Keys To An Event Strategy For More Profit Event Strategy: 3 Keys To An Event Strategy For More Profit
Event Strategy: 3 Keys To An Event Strategy For More Profit Daphne Bousquet
 

Andere mochten auch (15)

Patterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservicesPatterns and practices for real-world event-driven microservices
Patterns and practices for real-world event-driven microservices
 
C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...
C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...
C* Summit 2013: Eventual Consistency != Hopeful Consistency by Christos Kalan...
 
09 semantic web & ontologies
09 semantic web & ontologies09 semantic web & ontologies
09 semantic web & ontologies
 
Parallel Complex Event Processing
Parallel Complex Event ProcessingParallel Complex Event Processing
Parallel Complex Event Processing
 
Event Driven Architecture (EDA), November 2, 2006
Event Driven Architecture (EDA), November 2, 2006Event Driven Architecture (EDA), November 2, 2006
Event Driven Architecture (EDA), November 2, 2006
 
DataStax: Rigorous Cassandra Data Modeling for the Relational Data Architect
DataStax: Rigorous Cassandra Data Modeling for the Relational Data ArchitectDataStax: Rigorous Cassandra Data Modeling for the Relational Data Architect
DataStax: Rigorous Cassandra Data Modeling for the Relational Data Architect
 
Esper - CEP Engine
Esper - CEP EngineEsper - CEP Engine
Esper - CEP Engine
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Real World Event Sourcing and CQRS
Real World Event Sourcing and CQRSReal World Event Sourcing and CQRS
Real World Event Sourcing and CQRS
 
Setting Up Your Event Communication Workflow Using Church360° Unite
Setting Up Your Event Communication Workflow Using Church360° UniteSetting Up Your Event Communication Workflow Using Church360° Unite
Setting Up Your Event Communication Workflow Using Church360° Unite
 
Siddhi: A Second Look at Complex Event Processing Implementations
Siddhi: A Second Look at Complex Event Processing ImplementationsSiddhi: A Second Look at Complex Event Processing Implementations
Siddhi: A Second Look at Complex Event Processing Implementations
 
Retail Merchandising and Event Set-Up
Retail Merchandising and Event Set-UpRetail Merchandising and Event Set-Up
Retail Merchandising and Event Set-Up
 
Event day disaster: A story of sucess and ice
Event day disaster: A story of sucess and iceEvent day disaster: A story of sucess and ice
Event day disaster: A story of sucess and ice
 
Aerospike DB and Storm for real-time analytics
Aerospike DB and Storm for real-time analyticsAerospike DB and Storm for real-time analytics
Aerospike DB and Storm for real-time analytics
 
Event Strategy: 3 Keys To An Event Strategy For More Profit
Event Strategy: 3 Keys To An Event Strategy For More Profit Event Strategy: 3 Keys To An Event Strategy For More Profit
Event Strategy: 3 Keys To An Event Strategy For More Profit
 

Ähnlich wie Event processing – State of the art and research challenges AAAI 2011

Vldb 2010 event processing tutorial
Vldb 2010 event processing tutorialVldb 2010 event processing tutorial
Vldb 2010 event processing tutorialOpher Etzion
 
Debs 2010 context based computing tutorial
Debs 2010 context based computing tutorialDebs 2010 context based computing tutorial
Debs 2010 context based computing tutorialOpher Etzion
 
Proposed Event Processing Definitions ,September 20, 2006
Proposed Event Processing Definitions,September 20, 2006Proposed Event Processing Definitions,September 20, 2006
Proposed Event Processing Definitions ,September 20, 2006Tim Bass
 
Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)Geoffrey De Smet
 
Complex Event Processing
Complex Event ProcessingComplex Event Processing
Complex Event ProcessingJohn Plummer
 
How Events Are Reshaping Modern Systems
How Events Are Reshaping Modern SystemsHow Events Are Reshaping Modern Systems
How Events Are Reshaping Modern SystemsJonas Bonér
 
Understanding “Event” in Event Data
Understanding “Event” in Event DataUnderstanding “Event” in Event Data
Understanding “Event” in Event DataNicole O'Malley
 
Adding Rules to Improve Flexibility and Effectively Manage Complex Events
Adding Rules to Improve Flexibility and Effectively Manage Complex EventsAdding Rules to Improve Flexibility and Effectively Manage Complex Events
Adding Rules to Improve Flexibility and Effectively Manage Complex EventsTim Bass
 
Open Source Event Processing for Sensor Fusion Applications
Open Source Event Processing for Sensor Fusion ApplicationsOpen Source Event Processing for Sensor Fusion Applications
Open Source Event Processing for Sensor Fusion Applicationsguestc4ce526
 
Optimizing Your SOA with Event Processing
Optimizing Your SOA with Event ProcessingOptimizing Your SOA with Event Processing
Optimizing Your SOA with Event ProcessingTim Bass
 
PATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event ModelPATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event ModelMichael Heron
 
Perpetual Analytics - Health in Motion
Perpetual Analytics - Health in MotionPerpetual Analytics - Health in Motion
Perpetual Analytics - Health in Motionmrosenthal
 
A Deep Dive into Spring Application Events
A Deep Dive into Spring Application EventsA Deep Dive into Spring Application Events
A Deep Dive into Spring Application EventsVMware Tanzu
 
Processing Patterns for PredictiveBusiness
Processing Patterns for PredictiveBusinessProcessing Patterns for PredictiveBusiness
Processing Patterns for PredictiveBusinessTim Bass
 
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011Geoffrey De Smet
 
Processing Patterns for Predictive Business
Processing Patterns for Predictive BusinessProcessing Patterns for Predictive Business
Processing Patterns for Predictive BusinessTim Bass
 
The Internet of Things and some introduction to the Technological Empowerment...
The Internet of Things and some introduction to the Technological Empowerment...The Internet of Things and some introduction to the Technological Empowerment...
The Internet of Things and some introduction to the Technological Empowerment...Opher Etzion
 
SOPRANO Ambient Middleware (AAL)
SOPRANO Ambient Middleware (AAL)SOPRANO Ambient Middleware (AAL)
SOPRANO Ambient Middleware (AAL)Andreas Schmidt
 

Ähnlich wie Event processing – State of the art and research challenges AAAI 2011 (20)

Vldb 2010 event processing tutorial
Vldb 2010 event processing tutorialVldb 2010 event processing tutorial
Vldb 2010 event processing tutorial
 
Debs 2010 context based computing tutorial
Debs 2010 context based computing tutorialDebs 2010 context based computing tutorial
Debs 2010 context based computing tutorial
 
Proposed Event Processing Definitions ,September 20, 2006
Proposed Event Processing Definitions,September 20, 2006Proposed Event Processing Definitions,September 20, 2006
Proposed Event Processing Definitions ,September 20, 2006
 
Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)Applying complex event processing (2010-10-11)
Applying complex event processing (2010-10-11)
 
Complex Event Processing
Complex Event ProcessingComplex Event Processing
Complex Event Processing
 
How Events Are Reshaping Modern Systems
How Events Are Reshaping Modern SystemsHow Events Are Reshaping Modern Systems
How Events Are Reshaping Modern Systems
 
Understanding “Event” in Event Data
Understanding “Event” in Event DataUnderstanding “Event” in Event Data
Understanding “Event” in Event Data
 
Adding Rules to Improve Flexibility and Effectively Manage Complex Events
Adding Rules to Improve Flexibility and Effectively Manage Complex EventsAdding Rules to Improve Flexibility and Effectively Manage Complex Events
Adding Rules to Improve Flexibility and Effectively Manage Complex Events
 
Open Source Event Processing for Sensor Fusion Applications
Open Source Event Processing for Sensor Fusion ApplicationsOpen Source Event Processing for Sensor Fusion Applications
Open Source Event Processing for Sensor Fusion Applications
 
Optimizing Your SOA with Event Processing
Optimizing Your SOA with Event ProcessingOptimizing Your SOA with Event Processing
Optimizing Your SOA with Event Processing
 
Event Processing For Dummies
Event Processing For DummiesEvent Processing For Dummies
Event Processing For Dummies
 
PATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event ModelPATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event Model
 
OpherEtzion Wed-PM.ppt
OpherEtzion Wed-PM.pptOpherEtzion Wed-PM.ppt
OpherEtzion Wed-PM.ppt
 
Perpetual Analytics - Health in Motion
Perpetual Analytics - Health in MotionPerpetual Analytics - Health in Motion
Perpetual Analytics - Health in Motion
 
A Deep Dive into Spring Application Events
A Deep Dive into Spring Application EventsA Deep Dive into Spring Application Events
A Deep Dive into Spring Application Events
 
Processing Patterns for PredictiveBusiness
Processing Patterns for PredictiveBusinessProcessing Patterns for PredictiveBusiness
Processing Patterns for PredictiveBusiness
 
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
Applying CEP Drools Fusion - Drools jBPM Bootcamps 2011
 
Processing Patterns for Predictive Business
Processing Patterns for Predictive BusinessProcessing Patterns for Predictive Business
Processing Patterns for Predictive Business
 
The Internet of Things and some introduction to the Technological Empowerment...
The Internet of Things and some introduction to the Technological Empowerment...The Internet of Things and some introduction to the Technological Empowerment...
The Internet of Things and some introduction to the Technological Empowerment...
 
SOPRANO Ambient Middleware (AAL)
SOPRANO Ambient Middleware (AAL)SOPRANO Ambient Middleware (AAL)
SOPRANO Ambient Middleware (AAL)
 

Mehr von Opher Etzion

DEBS 2019 tutorial : correctness and consistency of event-based systems
DEBS 2019 tutorial  : correctness and consistency of event-based systems DEBS 2019 tutorial  : correctness and consistency of event-based systems
DEBS 2019 tutorial : correctness and consistency of event-based systems Opher Etzion
 
Sw architectures 2018 on microservices and eda
Sw architectures 2018    on microservices and edaSw architectures 2018    on microservices and eda
Sw architectures 2018 on microservices and edaOpher Etzion
 
ER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmas
ER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmasER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmas
ER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmasOpher Etzion
 
Event processing within the human body - Tutorial
Event processing within the human body - Tutorial Event processing within the human body - Tutorial
Event processing within the human body - Tutorial Opher Etzion
 
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial   When Artificial Intelligence meets the Internet of ThingsDEBS 2015 tutorial   When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of ThingsOpher Etzion
 
Has Internet of Things really happened?
Has Internet of Things really happened? Has Internet of Things really happened?
Has Internet of Things really happened? Opher Etzion
 
On the personalization of event-based systems
On the personalization of event-based systems On the personalization of event-based systems
On the personalization of event-based systems Opher Etzion
 
On Internet of Everything and Personalization. Talk in INTEROP 2014
On Internet of Everything and Personalization. Talk in INTEROP 2014On Internet of Everything and Personalization. Talk in INTEROP 2014
On Internet of Everything and Personalization. Talk in INTEROP 2014Opher Etzion
 
Introduction to the institute of technological empowerment
Introduction to the institute of technological empowermentIntroduction to the institute of technological empowerment
Introduction to the institute of technological empowermentOpher Etzion
 
DEBS 2014 tutorial on the Internet of Everything.
DEBS 2014 tutorial  on the Internet of Everything. DEBS 2014 tutorial  on the Internet of Everything.
DEBS 2014 tutorial on the Internet of Everything. Opher Etzion
 
ER 2013 tutorial: modeling the event driven world
ER 2013 tutorial:  modeling the event driven world ER 2013 tutorial:  modeling the event driven world
ER 2013 tutorial: modeling the event driven world Opher Etzion
 
Event semantics and model - multimedia events workshop
Event semantics and model -  multimedia events workshopEvent semantics and model -  multimedia events workshop
Event semantics and model - multimedia events workshopOpher Etzion
 
Debs 2013 tutorial : Why is event-driven thinking different from traditional ...
Debs 2013 tutorial : Why is event-driven thinking different from traditional ...Debs 2013 tutorial : Why is event-driven thinking different from traditional ...
Debs 2013 tutorial : Why is event-driven thinking different from traditional ...Opher Etzion
 
Debs 2012 gong show immortality
Debs 2012 gong show immortalityDebs 2012 gong show immortality
Debs 2012 gong show immortalityOpher Etzion
 
Debs 2012 basic proactive
Debs 2012 basic proactiveDebs 2012 basic proactive
Debs 2012 basic proactiveOpher Etzion
 
Debs 2012 uncertainty tutorial
Debs 2012 uncertainty tutorialDebs 2012 uncertainty tutorial
Debs 2012 uncertainty tutorialOpher Etzion
 
Proactive eth talk
Proactive eth talkProactive eth talk
Proactive eth talkOpher Etzion
 
Debs 2011 pattern rewritingforeventprocessingoptimization
Debs 2011  pattern rewritingforeventprocessingoptimizationDebs 2011  pattern rewritingforeventprocessingoptimization
Debs 2011 pattern rewritingforeventprocessingoptimizationOpher Etzion
 
Debs 2011 tutorial on non functional properties of event processing
Debs 2011 tutorial  on non functional properties of event processingDebs 2011 tutorial  on non functional properties of event processing
Debs 2011 tutorial on non functional properties of event processingOpher Etzion
 

Mehr von Opher Etzion (20)

DEBS 2019 tutorial : correctness and consistency of event-based systems
DEBS 2019 tutorial  : correctness and consistency of event-based systems DEBS 2019 tutorial  : correctness and consistency of event-based systems
DEBS 2019 tutorial : correctness and consistency of event-based systems
 
Sw architectures 2018 on microservices and eda
Sw architectures 2018    on microservices and edaSw architectures 2018    on microservices and eda
Sw architectures 2018 on microservices and eda
 
ER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmas
ER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmasER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmas
ER 2017 tutorial - On Paradoxes, Autonomous Systems and dilemmas
 
Event processing within the human body - Tutorial
Event processing within the human body - Tutorial Event processing within the human body - Tutorial
Event processing within the human body - Tutorial
 
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial   When Artificial Intelligence meets the Internet of ThingsDEBS 2015 tutorial   When Artificial Intelligence meets the Internet of Things
DEBS 2015 tutorial When Artificial Intelligence meets the Internet of Things
 
Dynamic stories
Dynamic storiesDynamic stories
Dynamic stories
 
Has Internet of Things really happened?
Has Internet of Things really happened? Has Internet of Things really happened?
Has Internet of Things really happened?
 
On the personalization of event-based systems
On the personalization of event-based systems On the personalization of event-based systems
On the personalization of event-based systems
 
On Internet of Everything and Personalization. Talk in INTEROP 2014
On Internet of Everything and Personalization. Talk in INTEROP 2014On Internet of Everything and Personalization. Talk in INTEROP 2014
On Internet of Everything and Personalization. Talk in INTEROP 2014
 
Introduction to the institute of technological empowerment
Introduction to the institute of technological empowermentIntroduction to the institute of technological empowerment
Introduction to the institute of technological empowerment
 
DEBS 2014 tutorial on the Internet of Everything.
DEBS 2014 tutorial  on the Internet of Everything. DEBS 2014 tutorial  on the Internet of Everything.
DEBS 2014 tutorial on the Internet of Everything.
 
ER 2013 tutorial: modeling the event driven world
ER 2013 tutorial:  modeling the event driven world ER 2013 tutorial:  modeling the event driven world
ER 2013 tutorial: modeling the event driven world
 
Event semantics and model - multimedia events workshop
Event semantics and model -  multimedia events workshopEvent semantics and model -  multimedia events workshop
Event semantics and model - multimedia events workshop
 
Debs 2013 tutorial : Why is event-driven thinking different from traditional ...
Debs 2013 tutorial : Why is event-driven thinking different from traditional ...Debs 2013 tutorial : Why is event-driven thinking different from traditional ...
Debs 2013 tutorial : Why is event-driven thinking different from traditional ...
 
Debs 2012 gong show immortality
Debs 2012 gong show immortalityDebs 2012 gong show immortality
Debs 2012 gong show immortality
 
Debs 2012 basic proactive
Debs 2012 basic proactiveDebs 2012 basic proactive
Debs 2012 basic proactive
 
Debs 2012 uncertainty tutorial
Debs 2012 uncertainty tutorialDebs 2012 uncertainty tutorial
Debs 2012 uncertainty tutorial
 
Proactive eth talk
Proactive eth talkProactive eth talk
Proactive eth talk
 
Debs 2011 pattern rewritingforeventprocessingoptimization
Debs 2011  pattern rewritingforeventprocessingoptimizationDebs 2011  pattern rewritingforeventprocessingoptimization
Debs 2011 pattern rewritingforeventprocessingoptimization
 
Debs 2011 tutorial on non functional properties of event processing
Debs 2011 tutorial  on non functional properties of event processingDebs 2011 tutorial  on non functional properties of event processing
Debs 2011 tutorial on non functional properties of event processing
 

Kürzlich hochgeladen

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 

Kürzlich hochgeladen (20)

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 

Event processing – State of the art and research challenges AAAI 2011

  • 1. Event processing – State of the art and research challenges AAAI 2011 Tutorial, San Francisco, August 7 th , 2011 Opher Etzion ( [email_address] ) Yagil Engel ( [email_address] )
  • 2. Slides available at: ie.technion.ac.il/~yagile/EP_Tutorial.pdf
  • 3. Imagine that… A driver gets notification on the car screen: the person crossing the street is an Alzheimer patient out of his regular route, he lives in 5 King Street. A national park gets information on all cars heading to the park from the car computer; can open more parking lots and notify cars that the park will be closed.
  • 4. Agenda Introduction and roots of event processing Players and architecture of event processing Current state of the art in event processing Challenges in event processing systems Summary I II III IV V
  • 5. I: Introduction and roots of event processing
  • 6. What is “event processing” anyway? or Event processing is a form of computing that performs operations on events
  • 7. In computing we processed events since early days Network and System Management
  • 8. Emerging technologies in enterprise computing (Gartner Hype Cycle, Summer 2009)
  • 9. What ’s new? The analog: moving from files to DBMS In recent years – architectures, abstractions, and dedicated commercial products emerge to support functionality that was traditionally carried out within regular programming. For some applications it is an improvement in TCO; for others is breaking the cost-effectiveness barrier.
  • 10. What is an event – three views An event is anything that happens, or is contemplated as happening. The happening view The state change view An event is a state of change of anything The detectable condition view An event is a detectable condition that can trigger a notification
  • 11. In daily life we often react to events..
  • 12. Many times we react to combination of events within a context The house sensor detects that the child did not arrive home within 2 hours from the scheduled end of classes for the day I want to be notified when my own investment portfolio is down 5% since the start of the trading Day ; have an agent call me when I am available , send SMS when I am in a meeting , and Email when I am out of office .
  • 13. Event Patterns Pattern detection is one of the notable functions of event processing
  • 14. What we actually want to react to are – situations TOLL VILOATOR FRUSTRATED CUSTOMER Sometimes the situation is determined by detecting that some pattern occurred in the Flowing events. Toll violation Frustrated customer Sometimes the events can approximate or indicate with some certainty that the situation has occurred
  • 15. Event processing is being used for various reasons
  • 16. Ancestor: Production Rules When Precondition Fire Action The precondition is implicit event when activated in forward chaining
  • 17. Ancestor: active databases On event When condition Do action With coupling mode Composite events were inherited to event processing
  • 18. Ancestor: Data Stream management system Source: Ankur Jain ’s website
  • 19. Event processing and Data stream management? Aliases? One of them subset of the other? Totally unrelated concepts?
  • 20. Ancestor: Temporal databases There is a substantial temporal nature to event processing. Recently – also spatial and spatio-temporal functions are being added
  • 23. Ancestor: Network and system management
  • 24. Ancestor: Messaging – pub/sub middleware
  • 25. II: Players and architecture of event processing
  • 26. Event Driven Architecture Event driven architecture: asynchronous, decoupled; each component is autonomic.
  • 27. Fast Flower Delivery Flower Store Van Driver Ranking and Reporting System Bid Request Delivery Bid Assignments, Bid alerts, Assign Alerts Control System GPS Location Location Service Location Driver ’s Guild Ranking and reports Delivery confirmation Pick Up confirmation Ranked drivers / automatic assignment Bid System Store Preferences Delivery Request Assignment System Manual Assignment Assignment Assignments, Pick Up Alert Delivery Alert http://www.ep-ts.com/EventProcessingInAction
  • 28. Event Processing Agent Context Event Channel Event Consumer Event Type Event Producer Global State The seven Building blocks
  • 30. Example of EPN – part of the FFD example
  • 31. Event type definition Detection time, Occurrence time, source, Certainty… Stock id, quote, volume… Free comments…
  • 32. Producer – State Observer in workflows State observer Push: Instrumentation points; Pull: Query the state
  • 33. Producer – Code instrumentation
  • 35. Producers – video streams to events
  • 37. Producer and consumer - Sixth sense
  • 38. Twitter as a producer and consumer
  • 39. Consumer - Performance monitoring dashboard
  • 41. Event Processing Agent Filter Transform Detect Pattern Translate Aggregate Split Compose Enrich Project Event Processing Agents
  • 43. Filter EPA A filter EPA is an EPA that performs filtering only, and has no matching or derivation steps, so it does not transform the input event .
  • 45.
  • 46. Pattern detection example Pattern name: Manual Assignment Preparation Pattern Type: relative N highest Context: Bid Interval Relevant event types: Delivery Bid Pattern parameter: N = 5; value = Ranking Cardinality: Single deferred Find the five highest bids within the bid interval Taken from the Fast Flower Delivery use case
  • 47.
  • 48. Context has three distinct roles (which may be combined) Partition the incoming events The events that relate to each customer are processed separately Grouping events together Different processing for Different context partitions Determining the processing Grouping together events that happened in the same hour at the same location
  • 49. Context Definition A context is a named specification of conditions that groups event instances so that they can be processed in a related way. It assigns each event instance to one or more context partitions . A context may have one or more context dimensions. Temporal Spatial State Oriented Segmentation Oriented
  • 50. Context Types Context Fixed location Entity distance location Event distance location Spatial State Oriented Fixed interval Event interval Sliding fixed interval Sliding event interval Temporal Segmentation Oriented
  • 51. Context Types Examples Spatial State Oriented Temporal Context “ Every day between 08:00 and 10:00 AM ” “ A week after borrowing a disk” “ A time window bounded by TradingDayStart and TradingDayEnd events ” “ 3 miles from the traffic accident location ” “ Within an authorized zone in a manufactory ” “ All Children 2-5 years old” “ All platinum customers” “ Airport security level is red” “ Weather is stormy” Segmentation Oriented
  • 52. III: The current states of the art in event processing
  • 53.
  • 54. The Babylon tower and current state of the practice
  • 57. CCL Studio (Coral8  Sybase)
  • 58.
  • 59. Microsoft Streaminsights var topfive = (from window in inputStream.Snapshot() from e in window orderby e.f ascending, e.i descending select e).Take(5); var avgCount = from v in inputStream group v by v.i % 4 into eachGroup from window in eachGroup.Snapshot() select new { avgNumber = window.Avg(e => e.number) };
  • 60. Esper EPL – FFD Example /* * Not delivered up after 10 mins (600 secs) of the request target delivery time */ insert into AlertW(requestId, message, driver, timestamp) select a.requestId, &quot;not delivered&quot;, a.driver, current_timestamp() from pattern[ every a=Assignment  (timer:interval(600 + (a.deliveryTime-current_timestamp)/1000) and not DeliveryConfirmation(requestId = a.requestId) and not NoOneToReceiveMSG(requestId = a.requestId)) ];
  • 61.
  • 64. Apama EPL – FFD Examples
  • 65. Performance benchmarks There is a large variance among applications, thus a collection of benchmarks should be devised, and each application should be classified to a benchmark Some classification criteria: Application complexity Filtering rate Required Performance metrics
  • 66. Performance benchmarks – cont. Adi A., Etzion O. Amit - the situation manager. The VLDB Journal – The International Journal on Very Large Databases. Volume 13 Issue 2, 2004. Mendes M., Bizarro P., Marques P. Benchmarking event processing systems: current state and future directions. WOSP/SIPEW 2010: 259-260 . Previous studies ‎indicate that there is a major performance degradation as application complexity increases.
  • 67. Throughput Input throughput output throughput Processing throughput Measures: number of input events that the system can digest within a given time interval Measures: Total processing times / # of event processed within a given time interval Measures: # of events that were emitted to consumers within a given time interval
  • 68. Latency latency In the E2E level it is defined as the elapsed time FROM the time-point when the producer emits an input event TO the time-point when the consumer receives and output event The latency definition But – input event may not result in output event: It may be filtered out, participate in a pattern but does not result in pattern detection, or participates in deferred operation (e.g. aggregation) Similar definitions for the EPA level, or path level
  • 69.
  • 70. Scalability in event processing: various dimensions # of producers # of input events # of EPA types # of concurrent runtime instances # of concurrent runtime contexts Internal state size # of consumers # of derived events Processing complexity
  • 71. Scalability solutions Significant progress in scalability enablers that provides feasibility for a system based on large scale event sources, event quantities, computations and actuators Smart placements of processing elements with dynamic load balancing Fault tolerance techniques enable trustable automatic processing Virtualization (scale-in) Use of parallel processing – multi-core and GPU processors – without extra programming efforts
  • 72. IV: Challenges in event processing systems
  • 73.
  • 75. Uncertain situations False positive: The pattern is matched; The real-world situation does not occur False negative: The pattern is not matched; The real-world situation occurs
  • 77.
  • 78. Predictive Event Processing (1) VS. Photo by Michael Gray, Flickr
  • 80.
  • 81.
  • 82. Dynamic event prediction Time Series Prediction Graphical models Temporal Graphical models
  • 83. Graphical Model for Missing a Flight (Logistics Scenario)
  • 84. Predictive Model for Missing a Flight (Logistics Scenario)
  • 85. Predictive Model for Missing a Flight (Logistics Scenario)
  • 86. Predictive Model for Missing a Flight (Logistics Scenario)
  • 87.
  • 88. Anomaly Detection in Networks (Xu and Shelton, 2008)
  • 89. CTBN model (Xu and Shelton, 2008)
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99. From Reactive to Proactive
  • 100. Example: Call Center Queue Assignment MDP Model: States (S) : queue status Actions (a) : assignments Reward (R) : penalty for waiting and blocking Transition (T) : call arrival, call ending
  • 102. Proactive Event-Driven Computing (1) predict (states, events) Real-time decision Proactive action events Event processing (filter, transform, match patterns) events Detect / Derive Predict Decide Act events Proactive event-driven computing is a new paradigm aimed at predicting the occurrence of problems or opportunities before they occur, and changing the course of actions to mitigate or leverage them
  • 103. Energy Scenario Detect  Predict Decide  Act Consumption Level Production Level State Generator Failure Generator Fixed Weather Forecast (sun, wind, temp, storm) Consumption Forecast Production Forecast Outage Prediction Many Failed Generators Prediction Call for Urgent Generators Fix Activate Expensive Diesel Generators Declare “Peak Hours” for Tomorrow Activate Rolling Blackout
  • 104. Detect Monitor shipment progress and various related alerts (traffic, cargo handling time at airport, carriers being late) Predict According to current route, the shipment will be 3 hours late and we will incur high penalty Decide Find alternative route which (given new condition) is faster than previous route Act Generate cargo reservations, reroute shipment Critical Shipment Logistics
  • 105. Personal reschedule Detect I got out of the house 20 Minutes late; there are three spots of traffic congestion on the way to the office; it is raining; and I have an important meeting in 25 minutes! Predict I am not going to get to the meeting, not even close! Decide Check whether there is a qualified person for this meeting that can replace me and has lower priority task for the duration of this meeting and reschedule his/her other obligations; Alternatively, check if there Is another time-slot later on the day for which the meeting can be rescheduled and get a decision! Act Notify all involved on their reschedule.
  • 106. Electric car – battery replacement overload Detect Tracking the cars driving within a certain area and their battery status. Predict In 2 hours the service stations in the area will be out of charged batteries. Decide Whether there are available spare batteries nearby that can be shipped via car, or a helicopter need to be dispatched to ship batteries from the central store. Act Load batteries on selected means of transportation and start the journey! Background: A company leases electric cars that can drive up to 100 miles; it provides both personal and public battery charge spots, and robotic battery replacement service stations as part of the lease.
  • 107. Portfolio tuning Detect Track corporate actions, news, exchange prices, and rumors about all securities in my portfolio Predict My portfolio is going to exceed my personal risk limit within 1 hour Decide Mark the securities to be sold and best timing to sell, find an alternative to buy that retain the risk limit. Act Buy/Sell orders
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113. Correctness The ability of a developer to create correct implementation for all cases (including the boundaries) Observation: A substantial amount of effort is invested today in many of the tools to workaround the inability of the language to easily create correct solutions
  • 114. Some correctness topics The right interpretation of language constructs The right order of events The right classification of events to windows
  • 115. The right interpretation of language constructs – example All (E1, E2) – what do we mean? A customer both sells and buys the same security in value of more than $1M within a single day Deal fulfillment: Package arrival and payment arrival 6/3 10:00 7/3 11:00 8/3 11:00 8/3 14:00
  • 116. Fine tuning of the semantics (I) When should the derived event be emitted? When the Pattern is matched ? At the window end?
  • 117. Fine tuning of the semantics (II) How many instances of derived events should be emitted? Only once? Every time there is a match ?
  • 118. Fine tuning of the semantics (III) What happens if the same event happens several times? Only one – first, last, higher/lower value on some predicate? All of them participate in a match?
  • 119. Fine tuning of the semantics (IV) Can we consume or reuse events that participate in a match?
  • 120.
  • 121.
  • 122. Ordering in a distributed environment - possible issues Even if the occurrence time of an event is accurate, it might arrive after some processing has already been done If we used occurrence time of an event as reported by the sources it might not be accurate, due to clock accuracy in the source Most systems order event by detection time – but events may switch their order on the way
  • 123. Clock accuracy in the source Clock synchronization Time server, example: http:// tf.nist.gov/service/its.htm
  • 124.
  • 125. Retrospective compensation Out of order event Recalculation Retraction of previous EPA results Not always possible!
  • 126. Classification to windows - scenario Calculate Statistics for each Player (aggregate per quarter) Calculate Statistics for each Team (aggregate per quarter) Window classification: Player statistics are calculated at the end of each quarter Team statistics are calculated at the end of each quarter based on the players events arrived within the same quarter All instances of player statistics that occur within a quarter window must be classified to the same window, even if they are derived after the window termination.
  • 128. Event processing is an emerging technology Potential for mutually beneficial interaction with AI  Make the next generation A vehicle to substantially Change the world Already attracted coverage of analysts and all major software vendors Event Patterns It barely scratched the surface Of its potential
  • 129.
  • 130.