Complex event processing: Difference between revisions

Content deleted Content added
No edit summary
Added another systemic example of CEP. The Hero Car.
Line 5:
==A Conceptual Description of CEP==
Examples of events include church bells ringing, the appearance of a man in a tuxedo or morning suit, a girl in a flowing white gown and rice flying through the air. A complex event is what one infers from the simple events: a wedding is happening. CEP is a programming language that helps discover complex, inferred events by analysing and correlating other events: the bells, the man and girl in wedding gear and the rice flying through the air.
 
==Another Systemic Example of CEP==
A more systemic example of CEP involves a car, some sensors and an accident. Imagine that a car has several sensor on it. It is able to measure tire pressure, speed, occupant seat occupied (is someone sitting in a seat) and has two buttons "Help" and "Cancel."
 
Imagine the car is riding and the tire pressure of one of the tires moves from 45 PSI to 41PSI over 5 minutes. The event "lossofTirePresure" is announced. This triggers a process which analysis the pressure loss. The presure is still within safety tolerances, but it notes the pressure loss in the car's maintanence log, and alerts the driver via the car's portal that the tire pressure needs to be taken care of. It also determines the closest gas station that advertizes an air-compressor and displays that for the driver's convience.
 
Imagine that same car has a significant pressure loss in the front, left tire. It goes from 45 PSI to 20PSI in 2 seconds. An event of "blowOutTire" is announced. And the car's process determines that and takes approprate measures to keep the car and occupants safe. It slows down the car by anti-lock breaking techniques to bring the car to a stop.
 
Unfortunitely the driver was thrown from the car and the event "driverUnseated" is announced. The combination of "blowOutTire", "zeroSpeed" and "driverUnseated" came in a very short period of time (a few seconds) and the car '''infers''' that the driver was thrown from the car and announced the "occupantThrown" event. There is no direct measurement that could determine conclusively that the driver was thrown, but the combination of events allows the conclusion to be made. This is a complex event. It is complex because one can not directly measure the event, one has to infer or deduce that it occured.
 
Like simple events, complex events are also announced and triggers processes. This process uses the GPS system and car communication system to look up how to contact the local sheriff and ambulances via a web service. Armed with this information, the car contacts the emergency responders and saves the life of the incapacitated driver.
 
==Academic Research==