Friday, June 27, 2008

On Intelligent Event Processing - AAAI symposium


This is a picture of the beautiful Stanford University, I am happy to inform today that the 2009 spring symposia of AAAI has accepted our proposal to hold a symposium about "Intelligent Event Processing" that I am organizing together with two young and energetic colleagues - Nenad Stojanovic and Adrian Paschke. This will be an attempt to get the AI community involved in event processing, and help realize the vision of "intelligent event processing". How can AI help event processing: there are several ways, and all of them are reflected in the symposium description, here are the important ones in my opinion:
Event Processing Modeling - using AI techniques: advanced logics, semantic
nets etc..
Event Pattern Discovery/mining
Event Prediction
Reasoning with uncertain events
Event-based reasoning under real-time constraints

The list of topics on the site contqins some additional topics as well. As one of our missions taken (within the EPTS) is to help accelerate the advancement of the event processing area, and using intelligent techniques may help some types of applications (again -- getting back to the elephant metaphor of my past postings - just a leg, not all applications !), the dialogue with the AI community and some projects already launched is a step in that direction. We'll post "call for papers" on the epts site, soon.

Thursday, June 26, 2008

On Unicorn, Professor and Infant

What is common to - unicorn, professor and infant - and how they are related to event processing anyway? -- These where my associations while reading the amusing post of my dear friend Tim Bass when he writes "On elephants and analytics" in an amusing response to my blog posting from this morning .
I am glad that Tim likes my metaphor of the big elephant, since my visit in Thailand last year, I dream about elephants all the time -). Since I am in a metaphors mood today, I'll use some more.


It seems that both Tim and myself share the opinion that the domain of event processing is much larger than the applications that exist today. In fact, I have stated several times, including in my press briefing for the EPTS launch: I believe that the big challenges are still ahead of us, since the industry barely scratched the surface of the potential use


In my previous Blog I have used the metaphor of an infant to describe this state.








Tim is constantly writing about the hype around CEP, again, in the metaphor level, some people that claim that their infant is a professor, and this of course not really true.



Indeed, there are people who over-hype CEP (a perfectly normal phenomenon, there is a hype cycle for each technology, and CEP is getting closer to the top), no surprise here.
Where I respectfully disagree with Tim, is in his claim that what has been done until today is just hype and hence totally worthless, my experience shows otherwise, there are customers which use current products and get value from using these products, and for some strange reason, the number of such customers is even growing (as a comment - calling all of them "time-series stream data engines" is a gross generalization, there is a variety of products, and not all of them are based on time-series streams, on the other hand, those who are based on time-series streams also have value). This does not say that current technologies solve all potential applications, and satisfy all potential users, but treating all the existing technology as a unicorn,

saying that everything is a hype, and there is nothing concrete, like a mythological creature, seems to me as going to extreme. Which takes me back to the elephant that both Tim and myself like While I agree with Tim that those who describe their infant as a professor may be looking at a toy elephant, the other extreme of treating an infant as a unicorn seems also to miss some part of the elephant.


Getting back to issue that start the case analytics and EP -- in my mind - to say that all EP applications require analytic tools, is like saying that one cannot get value from relational databases without using analytic tool, this assertion is certainly true for some types of application, and certainly wrong for others --- and it seems that the same hold for event processing applications. I'll let every reader to quantify the ratio based on his/her experience.

And last comment: it seems to me that there are more than one person in this community who meet customers and care about the value to customer; nobody has a monopoly on understanding all types of customers, applications and business values, and surprise - some vendors actually
believe that bringing value to custotmers is a better way to do business than selling balloons.

On EP and Analytics



Recently, some of my fellow-bloggers have occupied themselves with the question whether analytics are integral necessary part from CEP, and without it CEP does not really exist. My good friend Tim Bass went further in his current Blog and called the current state of the practice in CEP as Snake Oil , well - here I return to my previous posting with the metaphor of a group of blind people touching an elephant and each of them touches a different side of an elephant and each is confident that he knows what an elephant is, and furthermore he is the only one who knows what an elephant is. One of the benefits (there also some shortcomings...) of working in a large company is the exposure to many types of applications that are very far apart, and yet, all of them can share the same infrastructure (with some variations), talking specifically about the issue of EP and analytics - there are some applications that you cannot really think of without using analytics like "fraud detection" - where we need always to look at patterns that were unknown before, and have been used when our software has blocked the previous set of gaps, thus if the blind person touches the right back leg of the elephant in the "fraud detection" side, he sees analytics as a must. However - likewise there are plenty of other application - probably on other legs, back or trunk that do not require analytics - some simple examples: A physician sets individual alerts based on combination of test results/monitors reading - when to alert the physician or nurse; exception handling in manufacturing process - where the exceptions types are well-defined (and translated again to some combination of events); monitoring security regulation of different persons that need to be accompanied to various places within a plant according to the tag type, and checking if an autorized escorting person exists within the required distance, which monitors regulation and does not require any analytics, this is a small sample of CEP applications I have noticed recently.


Personally I think that analytics are very important, and we'll see more and more applications in which they are required, like the fraud detection one I've already mentioned, smart auditing etc... As stated before, I think that the combination of EP and some intelligent techniques (like: machine learning, prediction, handling uncertain information), which I call "Intelligent Event Processing" is very important for going forward, and we intend to reach to the AI community by doing a first Intelligent Event Processing conference as one of the AAAI spring symposia - stay tunde to note on that,

Having said that, I cannot say that this is the majority of applications, currently most CEP applications do not require analytics, here I join the opinion of Hans Glide on this issue.



This assertion returns me to the picture on the top of this blog - showing the half-full glass syndrom. Some people look at the empty half glass and some look at the full half glass. First - let's take the optimistic "full half" approach -- indications show that there are CEP products that serve as platform to build applications that bring real value to real customers, these applications are in a wide variery of areas, in variety of products, some of the type of "time series" streams, and some are not (next week I'll give a tutorial in DEBS 2008 on patterns, so this will be an opportunity to blog about types of patterns). The fact that they exist, is an indication that the EP indusrty is not just promoting "snake oil"
It is more interesting, as a scientist, to look at the empty half glass - which I think is even more than half. I think that the EP discipline is in its infancny, it already walks some steps, can say a few words, but we need to invest more until it will run, dance, sing and write Blogs... However, as every parent can testify, huge progress happens since from being a newborn until getting to the state I've described, so I don't underestimate the work done so far, and the traction achieved in the market, and think the entire community believe that we just scratched the surface of the potential. More - later.

Monday, June 23, 2008

Call for contributions - EPTS F2F meeting


The EPTS fourth event processing symposium is planned for September 17-19 in Stamford, CT.
While the exact agenda is not available yet (has dependency on contributions) here is a call for contributions in the following topics:

  1. Customer Panel -- Nominate a customer to participate in customers panel about the state of the practice in event processing.
  2. Use Case Session -- call for use cases, the use cases will be presented under the template that will be prepared by the use cases workgroup.
  3. Vendors Business Perspective Panel -- call for business executives of vendors to participate in a panel that will discuss the business trends of event processing products.
  4. Technology challenges panel --- call for CTO/senior architects of vendors/customers to participate in a panel that will discuss the technology challenges of event processing.
  5. Keynote Speaker on technical vision -- nominate a keynote speaker.
  6. Research projects session --- call for presentations from the research community of projects that may be of interest to the general event processing community.
  7. Standards -- Call for presentations on standards related issues
  8. Glossary --- Call for participation in a panel about the EPTS glossary

Nominations should be sent to : info@ep-ts.com


Monday, June 16, 2008

On the right event processing language


Recently, the discussion about the "right" event processing language has been resumed in couple of Blog entries. First Mark Tsimelzon, the energetic CTO of Coral8, claims that the most important property is that it is familiar and thus similarity to SQL is a benefit. Louis Lovas from Apama argues that familiar syntax is indeed important, but readability is even more important, and argues for imperative language - since most programming in the universe is done in Java / C style; from the comments it seems that David Luckham consistently thinks that Rapide is the right answer. This discussion reminds me of the famous story illustrated in the picture above where a collection of blind people are touching an elephant in different places, and consequently each of them describes the elephant differently. Different people have arrived to the Event Processing area from different backgrounds, and have in mind different type of usages and applications, they also may see different types of users in mind - e.g. verification engineers can work comfortably with temporal logic language, C/Java programmers may have some inclination towards script languages, business users need somewhat higher level language etc... In some applications the main natural abstraction is "stream" as a set of events in a certain time window, and most patterns are set oriented (like: aggregation, threshold, trend seeking etc...), while for other applications the main natural abstraction is "event", since events are processed individually, and the type of patterns deal with individual events (like: conjunction, disjunction, time-out etc..). The challenge with the maturing of the area is to build a language with all the right abstractions, but we need to understand them well first. A comment about the language syntax seems familiar --- yes, it has a benefit, however following this type of reasoning, we would still be in Assembly languages which was what programmers were most familiar with when I started my career as a programmer (once upon a time...), we are advancing since then to provide abstractions. SQL is by itself an abstraction over imperative languages that has started someday, I have still written imperative queries with loops in the pre-SQL era, likewise, spreadsheet programming (which started with Lotus 1-2-3) does not look familiar, but became the most pervasive programming style that exists today (for non-programmers). Thus, IMHO, abstractions that enable to think naturally about a certain type of functions is more important than familiar syntax.

Saturday, June 14, 2008

On Event Proessing Platforms and Engines



Here are pictures of some engine and some platform, and they don't seem to be compatible, however if a car will replace the horse in the 2nd picture, all of a sudden, the engine (of the car) will have a role in the platform. In event processing we hear more and more about platforms, and even about event-based middleware that will be a basis for XTP and other stuff. The platform is providing some services for agents to run, like a road system that can enable to get from place to place and provide services such as: signs, traffic lights etc... The way to go there can be by foot, riding an hoarse, and driving a car, among other options. Taking this analogy further -- in the event processing world, every agent can be implemented in ad-hoc fashion (going by foot), use C/Java code with some tools to help create EP applications, or use engines, which are COTS tools that do event processing. Implementation of heterogenous agents on the same platform requires interoperability standards, if we also wish to implement it in a seamless applications we'll need language standards. There are some starts of event processing platform, quite basic at that point, but the direction seems promising, and may, at some point in time we may see event processing platforms as a basis for the new generation of enterprise application servers.

Sunday, June 8, 2008

On EPTS again - calling for customers to join EPTS



After the first excitement of the launch (first press release is out, press briefing is out, some more press articles are coming soon, some of the members have referred in blogs or news, second press release is on its way) this is the time to extend the community. We have very good coverage of vendors, good coverage of academic people, some coverage of analysts. As I have written in the last blog, the target now is to add more customers. EPTS will issue a call for customers - in various places and opportunities (e.g. the Gartner EPS). What is the main motivation of customers to join:
  • Impact: A lot of activities are forthcoming that will help shaping technologies, their positioning, studies about ROI, terminology, and interoperability issues. EPTS members will be able to impact all these activities - either directly (participating in working groups) or indirectly (reviewing and commenting). Some of the customers community have a lot to contribute - they give talks about EP, they blog about it, and they express opinions on forums. This will be an organized way to translate the opinions and knowledge to impact.
  • Learning: EPTS will provide various community activities that will able its members to learn both on the technology and the business impact side of event processing, as well as sharing and learning best practices.
  • Networking: The various conferences, the work-group conference calls, and other activities will enable active networking, besides networking facilities already exists (user groups, forums and social networks - that will all still exist).
  • Help influence the establishment of "event processing" as an academic direction, impact research directions, and university level courses.

To remind you - there is no cost associated with joining EPTS, directions about joining can be found here: http://www.ep-ts.com/content/view/59/93/

Stay tuned for call for participation and contributions in the EPTS annual meeting in September 17-19, coming soon.