Wednesday, July 14, 2010

DEBS 2010 -- first day of the main conference

The first day of the main conference yesterday ended in an organ recital in the King's College Chapel, seen in the picture, magic place - people keep talking about being in Hogwarts. The conference itself started with the first keynote by Mike Franklin who shared his experience both from his work in Berkeley and in his start-up Truviso. Mike's main motivation is to extend database technology to react in a continuous way in addition to the traditional batch way of analytics, and view batch as a special case of the continuous. The talk was a kind of "lite sell pitch", but had some good points, like the observation that a start-up can take a known technology and try to use it for new types of applications (which is what Turviso does), or devise a new technology and tries to attack existing applications better, but it is very difficult to do both at the same time (new technology and new applications). I think that the event processing area indeed tries to do both.

There were some other talks, mostly by graduate students. One of the interesting observations (not a new observation to me), that there is a lot of energy in this community to re-invent wheels, in different variations. I think that one of the good results in the database community of the relational model was that a large part of the research community took it as a basis and constructed the research on top of it, and people did not try to re-invent databases from scratch for every thesis. In event processing we are still not there, and IMHO the area will have more substantial results, if the research efforts will be more focused on advancing the state-of-the-art instead of re-inventing most and advancing a little bit (in the best case). Today we'll have follow-up meeting to the Dagstuhl seminar, and the research grand challenge we are discussing is aimed to that matter.

In the late afternoon there were a fast abstract session, where I gave a short (8 minutes, 4 slides) talk on the interactions between business rules and event processing (I'll write about this subject some other time), and then a session of demos and posters, with a couple of follow-ups for me.

More -later. The second day of the main conference is about to start.

Tuesday, July 13, 2010

DEBS 2010 --- tutorial days and our context related tutorial

This is King's College in Cambridge, a palace shaped building in which I am staying now, and in which the DEBS 2010 conference is being held. This nice picture was taken by Jacklyn Banergee and can be found is a website called Victorian Web. Cambridge is a very nice place and I took some time both yesterday evening and this evening to walk around. There was one thing in DEBS 2010 that reminded of DEBS 2008 in Rome -- it is July, the weather is quite hot, and this place is not very strong on air-conditioning (there is none in the guest rooms!)-- it seems that it is not an important part in the European culture.

The first day of the DEBS conference was yesterday - a PhD workshop, I have attended part of it, today was the tutorial day, I have attended two tutorials - the one about wireless sensor networks (the first half) and the second about event processing reference architectures - you can view the tutorial page of the DEBS 2010 conference for more details. We also had a tutorial that was delivered by Ella Rabinovich and myself on context related stuff. I have written about contexts several times in this Blog, and the tutorial provides some details about the roles of tutorial, in-depth look about tutorials, and implementation of tutorials in practice. I've uploaded the tutorial on slideshare, and you can view it from there, I hope that the rest of the tutorials will follow soon. Tomorrow - the paper presentation part is starting.

Thursday, July 8, 2010

Announcing the EPTS awards



EPTS has announced on a competition to grant awards of two types:

The innovative application award, in cooperation with OMG Event Processing Community of Practice, will be awarded to an application that have used event processing in an innovative way.

The innovative principles award, will be awarded to a research contribution that had a significant impact on the state-of-the-art in event processing.

The competition is open to everybody. Deadline for nomination submissions is September 30, and the award will be given in November and will publicized in the media.

Full details about the award program can be found on the EPTS external website.

Next week in DEBS we'll hand out a flyer with the announcement and start communicating the award program

Tuesday, July 6, 2010

On Peter's Laws


I have written about the ten commandments of the intrapreneuring, here is something in the same spirit that I came across recently (though it is not new), the Peter's laws (not to be confused with the Peter principle), though they look as a piece of humor, they are indeed quite serious, some of them look to me as if I have written them myself (items 5, 7, 9, 10 in the list below - for example). If you can not read the picture below - here it is again in text form (though they are not totally identical). Enjoy!

  1. If anything can go wrong, Fix it! (To hell with Murphy!)
  2. When given a choice -- Take both!
  3. Multiple projects lead to multiple successes.
  4. Start at the top and work your way up.
  5. Do it by the book...but be the author!
  6. When forced to compromise, ask for more.
  7. If you can't beat them, join them, and then beat them.
  8. If it's worth doing, it's got to be done right now.
  9. If you can't win, change the rules.
  10. If you can't change the rules, ignore them.
  11. When faced without a challenge, make one.
  12. "No" simply means begin again at the next highest level.
  13. Don't walk when you can run.
  14. Bureaucracy is a challenge to the be conquered with a righteous attitude, an intolerance for stupidity, and bulldozer when necessary.
  15. When in doubt: THINK!
  16. Patience is a virtue but persistence to the point of success is a blessing.
  17. The squeaky wheel gets replaced.
  18. The faster you move, the slower time passes, the longer you live.

Thursday, July 1, 2010

On VLDB 2010 -- events and streams related papers

After a few years of missing VLDB, I plan this year to participate in the VLDB conference in Singapore (which will be an opportunity to visit Singapore, I have never been there). I have a tutorial accepted entitled: Event Processing - past, present, future. VLDB is one of the major research conferences of the database community (my original home community).

The list of accepted papers is now on the website -- looking at it there are some papers whose title include either events or streams:

Complex Event Detection at Wire Speed with FPGAs
High-Performance Dynamic Pattern Matching over Disordered Streams
Achieving High Output Quality under Limited Resources through Structure-based Spilling in XML Streams
SECRET: A Model for Analysis of the Execution Semantics of Stream Processing Systems
Recognizing Patterns in Streams with Imprecise Timestamps
On Dense Pattern Mining in Graph Streams
Database-support for Continuous Prediction Queries over Streaming Data
Conditioning and Aggregating Uncertain Data Streams: Going Beyond Expectations
From a Stream of Relational Queries to Distributed Stream Processing
iFlow: An Approach for Fast and Reliable Internet-Scale Stream Processing Utilizing Detouring and Replication

And some demos:
Active Complex Event Processing: Applications in RealTime Health Care
Efficient Event Processing through Reconfigurable Hardware for Algorithmic Trading
Geospatial Stream Query Processing using Microsoft SQL Server StreamInsight


As you can notice - in the database community the term "streams" is more common than the term "events", and I'll go back to the discussion of streams vs. events soon.

IBM will have a substantial presence in VLDB with 9 research papers, 5 industrial papers, 3 demos and 1 tutorial.

More - later.



Tuesday, June 29, 2010

On restful event producers


Another year has passed and yesterday was my birthday; I tend not to celebrate an event that reminds me that I am getting older, so I found on the Web a greeting card that fits my sentiments; however -- this year I got much more birthday greetings than usual. Of course I can be encouraged that all of a sudden I became popular, but the truth is that I filled profile descriptions in some social networks - Facebook, LinkedIn, the family tree site (may be one or two more) - all of them send alerts to people about birthdays...

I have written about event producers such as the CICS event producer, that instruments CICS transactions and emits them as events; event producer needs to produce the event by sensing or instrumenting some software/process to create the event, and also needs to communicate the event to the event targets (event processing agents, channels and consumers).

There is a new article on IBM developerWorks dealing with emitting events using REST interface. The word REST has an association with resting, like the Van Gogh famous picture of noon rest - below.


But in this context REST of course means "representational state transfer". The article describe how to use the REST interface of Websphere Business Events to emit events from any application that has access to web protocols. Enjoy!

Monday, June 28, 2010

On event flow and control flow


Teaching another internal course in event processing, one of the questions that was asked by the participants, and is actually a frequently asked question when viewing our notation of event processing network is -- whether we are reinventing workflows.

The answer is -- no.

Viewing control flow and event processing networks (both figures were taken from IBM developerWorks)


The common denominator is that both of them looks as graphs with nodes and edges of various types; but there are also some differences:

In control flow systems the edge typically means that when some task that executes on the node ends the control (conditionally) is passed to the task represented by the predecessor node in the graph. There can be some and/or/xor conditions as seen in the diagram above - and they typically refer to the termination status of the task (success/fail).

In event processing network, the nodes represent EPA (event processing agent), and the edges represent events that flow between these agents. The fact that an EPA emits an event does not necessarily mean that it has been terminated, an EPA can create derived event in an "immediate mode" which might designate that a pattern was matched. The source EPA may still continue to run. Likewise, an event that is sent to a target EPA does not necessarily mean that it is invoked, it may have been there, it does not even indicate that the target EPA will use this event, it may filter it out on entry. If it uses the event, it may not react to it directly, since it is a part of a pattern that has not been completed yet. In general -- all an edge in the graph says that one node sends an event to another, and nothing more.

One cannot represent event processing network using regular workflow, however, a workflow can be represented using event processing network !