Deal of the Day

Home » Main » Manning Forums » 2009 » Event Processing in Action

Thread: definition of event

Reply to this Thread Reply to this Thread Search Forum Search Forum Back to Thread List Back to Thread List

Permlink Replies: 13 - Pages: 1 - Last Post: May 23, 2009 11:18 AM by: opher.etzion Threads: [ Previous | Next ]
hgilde

Posts: 22
Registered: 3/24/09
definition of event
Posted: Apr 14, 2009 11:17 AM
  Click to reply to this thread Reply

Although it is too early in the book to fully understand where you are going, I think you have made the definition of event more complex than I would.

"or is contemplated as having happened" - Ok, so you are saying that an event does not have to represent a real world occurrence. Yes, this is true, but I would say it another way:

The most important qualities of an event (IMO) are that it is an instantaneous and atomic occurrence. An event can be further categorized: a real world event, an event from a training simulator, an event that has been inferred to have happened, an event that may have happened, etc. All of these things are occurrences, but should be interpreted differently. The crash of a plane in a simulator is an occurrence and is no less concrete than the crash of a plane in the ocean, but only one requires emergency response.

Another example: you might look at the fraud detection example as an event "fraud" that is contemplated as having happened. Or you might think of it as "possible fraud detected". I would encourage the latter. It is a concrete occurrence (possible fraud has been detected) and there is no fundamental difference between "possible fraud detected" and the event that a temperature reached a certain threshold. By this I mean that if you are making sets of events, both of these events could be in the same set and the same operators would work on both (compare occurrence time, determine presence or absence within a subset, attach probability mappings and structures, etc).

I would be tempted to define an event as "an instantaneous and atomic occurrence in an external system, or a programming entity that represents such an occurrence." I would then need to point out that such a thing can be classified and that this classification of events allows for such cases as virtual worlds, inferred events, probabilistic events and possibly other things. The result would be a definition section containing very similar content to what you have, but phrased in a different way.

opher.etzion

Posts: 56
From: Haifa, Israel
Registered: 3/24/09
Re: definition of event
Posted: Apr 14, 2009 12:00 PM   in response to: hgilde in response to: hgilde
  Click to reply to this thread Reply

Hi Hans.

Event definition is one of the most tricky things, and there have been a lot of discussions around the definition in the EPTS glossary which resulted in a very basic definition as a result. The temporal database community indeed defined event as instantaneous and atomic event, but David Luckham did not agree to that definition, claiming that nothing in the universe is instantaneous and event really happens over an interval, the compromise has been to agree that event occurs over an interval, but in many cases, we can approximate the interval to a time-point, due to the fact that the granularity of time we are interested includes the event, for example in our use case, for most events, the granularity of time (AKA chronon) that we are interested is a MINUTE, the fact that the event occurred at some time interval within this minute is not important for our purposes, and we can look at a temporal scale isomorphic to natural numbers, and in this case treat the event as instantaneous. There are also probabilities (or other measures of belief) that can be associated with the fact whether an event happened, which is what you meant in your fraud detection example. We discuss the issue of event and what information should be available about it in depth in chapter 4, that is already written, and hope it will be on the forum soon,

cheers,

Opher

hgilde

Posts: 22
Registered: 3/24/09
Re: definition of event
Posted: Apr 14, 2009 2:06 PM   in response to: opher.etzion in response to: opher.etzion
  Click to reply to this thread Reply

Well, I do see that things are tricky with event. But I will still register my disagreement with the current definition. I will back this up by saying that the definition should allow us to immediately classify the following as events or not: "an apple was placed on the table" , "there is an apple on the table" , "an apple was detected on the table". I think that the current definition leaves too much room to argue this point, and so is not very helpful.

I see that instantaneous may be wrong, but I would say it's worth it to come up with something that's right.

Hopefully by the time you have made chapter 4 available, I will have figured out how to download chapters 2 and 3. :)

opher.etzion

Posts: 56
From: Haifa, Israel
Registered: 3/24/09
Re: definition of event
Posted: Apr 14, 2009 2:22 PM   in response to: hgilde in response to: hgilde
  Click to reply to this thread Reply

OK, We'll consider a sharper definition of event.
Chapter 2 is already available through the MEAP program (see details in the Manning site), and Chapter 3 will be there in a few days (already finished).

All revisions will be done after completing 1/3 of the book (5 chapters), until that time we are collecting input, and of course we'll get input from the official reviewers as well.

Opher

RichardVeryard

Posts: 4
From: London
Registered: 4/19/09
Re: definition of event
Posted: Apr 19, 2009 5:04 PM   in response to: opher.etzion in response to: opher.etzion
  Click to reply to this thread Reply

I have always argued for respecting the difference between the detection of an event and the event itself. See my discussion on shoplifting.

http://rvsoapbox.blogspot.com/2008/09/event-processing-example-shoplifting.html

RichardVeryard

Posts: 4
From: London
Registered: 4/19/09
Re: definition of event
Posted: Apr 19, 2009 5:07 PM   in response to: opher.etzion in response to: opher.etzion
  Click to reply to this thread Reply

How do you count how many events?

If you have a three-car pile-up, does that count as one collision or two, given that the third car hits a few seconds after the first two? Or three collisions, if the third car hits both of the first two cars?

http://rvsoapbox.blogspot.com/2008/12/how-many-events.html

opher.etzion

Posts: 56
From: Haifa, Israel
Registered: 3/24/09
Re: definition of event
Posted: Apr 20, 2009 4:11 AM   in response to: RichardVeryard in response to: RichardVeryard
  Click to reply to this thread Reply

> I have always argued for respecting the difference
> between the detection of an event and the event
> itself. See my discussion on shoplifting.
>
> http://rvsoapbox.blogspot.com/2008/09/event-processing
> -example-shoplifting.html

Hi Richard. There are raw events that are provided as input to an event processing system from the outside (although such event may also be a result of some other system) and derived event that is somehow derived by the event processing system, If the event is "raw" then the way it was detected (by some pre-processing) is transparent to the system, if it is a derived, the event derivation process is part of the system.

The event itself is what was reported or derived, what you call "detection" is the process of deriving this event.

cheers,

Opher

opher.etzion

Posts: 56
From: Haifa, Israel
Registered: 3/24/09
Re: definition of event
Posted: Apr 20, 2009 4:16 AM   in response to: RichardVeryard in response to: RichardVeryard
  Click to reply to this thread Reply

> How do you count how many events?
>
> If you have a three-car pile-up, does that count as
> one collision or two, given that the third car hits a
> few seconds after the first two? Or three collisions,
> if the third car hits both of the first two cars?
>
> http://rvsoapbox.blogspot.com/2008/12/how-many-events.
> html

Events are not an absolute concept, it is relative to a certain domain / application.
For the insurance company each car creates a separate event, since it is handled separately. Maybe for the traffic police this is a single event in which three cars are involved.

cheers,

Opher

coffee_fan

Posts: 11
Registered: 5/14/09
Re: definition of event
Posted: May 14, 2009 12:23 PM   in response to: hgilde in response to: hgilde
  Click to reply to this thread Reply

Interesting discussion. I like the separation of event from its representation and the note that indeed you may represent more or less information about the event.

I do not understand why the emphasis on the "external system"; to me it is just "system" as there may also be internal events which are generated in the system. You could argue that throwing an exception and catching it somewhere inside the very same system is consequential to something happening externally, but that would indeed be a long argument.

opher.etzion

Posts: 56
From: Haifa, Israel
Registered: 3/24/09
Re: definition of event
Posted: May 14, 2009 1:36 PM   in response to: coffee_fan in response to: coffee_fan
  Click to reply to this thread Reply

Hi Coffee Fan.

For the processing point of view, it is not important whether the event came from some external producer or created inside the system. This plays a role for auditing and governance purposes, such as trying to find the lineage / provenance of a certain action taken. We shall discuss this issue later in the book.

cheers,

Opher

coffee_fan

Posts: 11
Registered: 5/14/09
Re: definition of event
Posted: May 14, 2009 9:36 PM   in response to: opher.etzion in response to: opher.etzion
  Click to reply to this thread Reply

Thanks for the reply Opher, I was simply relating to my perception that putting the word "external system" confuses the definition. I will wait till I read later chapters to see whether I understand exactly why you wanted to put that wording in it.

RichardVeryard

Posts: 4
From: London
Registered: 4/19/09
Re: definition of event
Posted: May 23, 2009 10:48 AM   in response to: opher.etzion in response to: opher.etzion
  Click to reply to this thread Reply

> Events are not an absolute concept, it is relative to a certain domain / application.

If each system (domain/application) has a different event model, then you need some kind of event-translation before you can share events between systems.

Do you see the advantages of having a common event model that spans multiple domains / applications? Or do you want each event-processing system to be an isolated silo?

RichardVeryard

Posts: 4
From: London
Registered: 4/19/09
Re: definition of event
Posted: May 23, 2009 10:56 AM   in response to: opher.etzion in response to: opher.etzion
  Click to reply to this thread Reply

> Hi Richard. There are raw events that are provided
> as input to an event processing system from the
> outside (although such event may also be a result of
> some other system) and derived event that is somehow
> derived by the event processing system, If the event
> is "raw" then the way it was detected (by some
> pre-processing) is transparent to the system, if it
> is a derived, the event derivation process is part of
> the system.
>
> The event itself is what was reported or derived,
> what you call "detection" is the process of deriving
> this event.
>
> cheers,
>
> Opher

What worries me here is the possibility that changes in the system design (for example moving the system boundaries, or plugging in some additional functionality) might force me to change my underlying event model. I'd have thought you'd want the event model to be more stable than the processing model.

opher.etzion

Posts: 56
From: Haifa, Israel
Registered: 3/24/09
Re: definition of event
Posted: May 23, 2009 11:18 AM   in response to: RichardVeryard in response to: RichardVeryard
  Click to reply to this thread Reply

Hi Richard. Actually the question whether the car accident is interpreted as one event or three events, is analog to ideas of different views for different users in databases, and thus do not make the model unstable, both interpretations can live in the same application, so relativism can reside in a single application, and have consistent semantics based on the view of various consumers.

Also -- the issue of raw/derived may change with the change in the boundaries of the system, however, this does not change the processing, it changes the lineage of events, and if the borders of the system is modified, then the managed parts are changed, and lineage can change as well.

Legend
Gold: 300 + pts
Silver: 100 - 299 pts
Bronze: 25 - 99 pts
Manning Author
Manning Staff