Friday, November 5, 2010

On the Rabbi and the limited appeal

An old Jewish folk story is about husband and wife who came to a Jewish Rabbi for marriage counseling, the Rabbi listened to the husband and said: you are right,  then listened to the wife and said again: you are right. After they left his assistant asked him: "Rabbi - why did you say to both of them that they were right, it is not possible that both of them are right", and the Rabbi answered again - "you are also right".    I recalled this story after reading Mark Palmer's Blog entitled:  "how broad is the appeal of CEP".   The story starts with the CEO of SAS  claiming that CEP has limited appeal continuing with the rebuttal of Progress and TIBCO, saying that the SAS guy underestimates the potential and there are many applications in multiple industries.   Mark Palmer has a counter-opinion saying that relative to BI, EP is still small, but has a potential to grow,  and it is hot within a single industry - capital markets, with relatively modest interest in other industries - Chad Gadya!     


So why does it remind me the Rabbi's story?  -- since each of them is right in something.
EP is indeed a smaller market relative to BI, and much younger and less mature.  Some of the BI people regard EP as a "non issue" since one can do anything with BI tools, or database queries, and the only reason to use EP is when there are latency and throughput requirements that cannot be satisfied.  However, as noted many times, the bigger appeal of EP is the abstractions that enable to develop and maintain applications of that type more easily and substantially reduce the TCO.     The observation that EP market is  much smaller than the BI market today is certainly true,  maybe the fact that the SAS guy bothered to react on it is a sign that they start feel some presence in their territory.    BTW -- I don't view BI and EP as competitive technologies, each of them are destined to do different things, some applications need both.


Next --  inside the  EP house,  it seems that there is some agreement, about the potentially bright future, and some disagreement about the present and  even more about the scope.    I guess that appeal is in the eyes of the beholder,  but let me make one observation:  when Streambase is looking at the universe it looks at the market for a stand-alone event processing product; when some of the bigger companies look at the universe, they look at event processing capabilities as part of a larger enterprise computing infrastructure.   When we did, a few years ago, the business evaluation work for IBM, towards the decision to enter this market, we have identified both of them as opportunities, the stand-alone one has its own existence, but is more limited in scope,  for the "embedded" one -- possibilities are much higher, but more work is needed to make event processing capabilities as part of facets of enterprise computing infrastructure -- decision support platforms, business process management platforms, messaging oriented middleware,  sensors and actuators frameworks and  even business analytics framework.   These two view points of the universe provide different perspectives to the beholders, and so each of them is right from his own perspective.      More - later.  

Sunday, October 31, 2010

Back to temporal databases



In 1998 I have edited a book of articles about temporal databases (together with Sushil Jajodia, and Sury Sripada), this followed a Dagstuhl seminar we held in 1997 about temporal databases, an area that was hot at that time in the research community, and somewhat cooled off.   Today a Master student I supervised took her final exam on "final work" (which is less than a thesis, a track that require to take more credit work), and did an implementation of a temporal database model from a paper in this book that was co-authored by Arie Segev, Avi Gal and myself.   This is somewhat more expressive model than the TSQL based models, and had its own interesting featured like: ability to freeze and unfreeze data, ability to distinguish between modification and revision, ability to deal with simultaneous value.  In fact some of these ideas found themselves into our work on event processing (e.g. policies when there are repeating events that may match the same pattern).  


Temporal databases as an area started in the Israeli army. Kobi Ben-Zvi who went from the Israeli army to do PhD in UCLA has invented the area, by formalizing the terms, and there has been a lot of work later in the research communities in the 1990-ies.    There was even big fight about how to extend the SQL standard to support temporal databases between two parties,  I don't really remember the details, in the book you can find the position of the two sides of this battle, as the Dagstuhl seminar was one of the battle fields.  The end result is that it never became part of the SQL standard, partly because of the fights, and more importantly since at that time the DBMS vendors have higher priorities on their mind -- e.g. Web related stuff, XML data etc..   There are some features, but it did not get fully into the mainstream of databases, although there are quite a few of specialized implementations.     One of the future directions of event processing will involve getting back to temporal databases as an infrastructure,   which is the area of retrospective event processing, I'll write more about it in the future.   

Monday, October 25, 2010

On the IBM Corporate Award - recognition event

Yesterday, there was a "recognition event" to recognize those in Israel who received the IBM Corporate Award, and some other awards this year. This award is the highest award that IBM grants to its employees, this year there have been 20 such awards worldwide (IBM employees from Israel have participated in 3 out of these 20 awards - quite an achievement relative to Israel size inside IBM), where each award can be shared among several people.    In the picture above you can see me in the middle between Meir Nissensohn, the General Manager of IBM Israel on my right hand side, and Oded Cohn, the Director of the Haifa Research Lab, on my left hand side.   Actually I got this plaque more than 2 months ago, and handed it over so I can get it back on the stage.  The award was given for "deep insights and groundbreaking research in Event Processing",  and contribution to the event processing industry development in general to be an emerging market, and getting IBM as a leader in this area in particular.


Then they asked me to provide some impressions 








We were briefed beforehand and were told that we'll not be able to use slides, just use voice, so I have given some insights and impressions in a way that was described later by people as a "stand-up performance" (well, I was sitting down), this is consistent with one of my old habits - Ridendo Dicere Verum,  when we started working on event processing in 1998, we did not know that we are doing event processing, we did not actually used that name, we also did not realize that 10-12 years later it will be an established and well-recognized area.   Getting new ideas in a big corporate are never easy, and I have written before about some best practices to navigate.    


Getting a recognition is always fun - but as my motto in life is based on the poem "IF" by Kipling, I'll end with one citation from this immortal poem:


If you can meet with Triumph and Disaster
And treat those two impostors just the same;



This award has reflected past work, but the challenge for the present is to work on the future of this area, my recent talk in the OMG conference reflects some of the work towards the future.

Saturday, October 23, 2010

On IBM Websphere Decision Server

IBM recently announced "Websphere Decision Server".  This announcement states that this offering combines business event processing with business rules management system to accelerate decision making.


There are several ways in which event processing and business rules interact, some of them are: an event, derived by pattern detection, triggers a rule, which makes it event-driven decision; the other direction is also valid:  an execution of rules brings into decision and this decision can be reported as an event and may influence other decisions.  Triggering decisions is one of the major uses of event processing (of course it is not the only one,  e.g. event processing can be used for diagnosis or information dissemination), and it is a component in the automated decision making process, but these components mainly exist within islands (EP, business rules, optimization software and other means of decision support systems).    One of the areas we are working on (we had a short report on it within the "fast abstract" session of DEBS 2010, as we were not in a position yet to deliver a full paper) is a unified conceptual model of event processing and business rules, where both are generalized as decision agents.  this is still in the research phases, and not part of the product, nevertheless this announced offering provides step forward in achieving such an integration.   More synergies in the decision space are expected.     

Tuesday, October 19, 2010

Teaching an event processing course again

Yesterday I have started teaching again, this time in the Bloomfield building at the Technion, seen in this picture.   Sometimes people ask me why do I continue teaching,  it is probably not because I am bored, on the contrary,  I am quite busy;  it is probably not because it is a well-paid job,  actually they pay peanuts.  
I think that I continue to do it, since I like the interaction with students, and it is also means to evangelize "event processing" to the younger generation;  it also provides exposure to graduate students to work with, as over the years I have supervised (or co-supervised)  6 PhD dissertations and 21 MSc thesis, if my count is right.   It is also source for recruiting.   Quite a lot of my colleagues in IBM have been my own students (which I supervised), or my teaching assistants, or students that took courses with me.    


The way my courses are designed revolve among the following principles:


For historical reasons the course is called "database engineering" and always there is a student who expects to see classical database course,  for these students I answer that today in any database conference, data stream management is one of the emerging areas, and I am giving a flavor of it (my approach is not database centric,thought), I also show students some analysts testimonies that event processing is an emerging markets in general.   The second principle is deep dive -- the course is going more on depth then on breadth, the students should gain deep understanding in what event processing is. The last principle is retain over time, my own experience is that to retain over time students have to experience themselves, so they'll get implementation project, I have not yet decided what the projects will be, gave myself time until next week.
I am using the EPIA book as a text book,  but this time will not focus on the FFD example.   
I might create teaching materials for this course so that others will be able to reuse it.


  

Thursday, October 14, 2010

On reaction to events


I noticed that the number of my linked-in contacts has grown again to a nice number 888,  my wife said that if I'll hit 999 she'll join linked-in and be my 1000 connection, so have some way to go.  



Anyway - one interesting insight from my recent visit in the USA is the way to react to event, or why proactive behavior needs to be smart.  I was driving in a road and there has been a sign notifying: traffic jam in a certain bridge, it is advised to use alternative roads, there was still around 30 minutes to drive to that bridge, and a couple of alternative roads. 




 My own calculation was that most of the traffic heading to that direction will use alternative roads, and that there is enough time for the traffic jam to be cleared, assuming that there will be very little additional traffic,  this of course was a gamble, but since I was not in a hurry to catch a flight, I decided to take this gamble, ignored the advice and drove straight to the bridge with the traffic jam, and surprise...surprise... the bridge was totally clear without any delay, indeed the traffic jam was cleared and there has been very little traffic heading in that direction.   Of course, if many other drivers would have taken the same strategy it would not have worked (like the prisoner's dilemma in game theory).     The lesson it that notifying about event may not yield the best result, maybe alternative road became jammed.  In this case the global optimization was to direct certain percentage of the traffic to each alternative route and leave certain percentage directed to the original route.   If we are looking from the point of view of individual driver who does not care about the others, this driver still needs to take into account the other's reaction in order to determine strategy.   I guess that these kind of considerations are also getting into trading decisions.  

Sunday, October 10, 2010

More on the OMG event processing symposium in the capital market area


Back home,  looking at some notes I have taken in the OMG EP meeting in NYC last week.  Here are some of these notes:

  • The host was Credit Suisse, so we had an opening talk of Eric Newcomer, who told us about Credit Suisse, and also told us that his title was changed from CTO to Chief Architect, since the problem is not evaluation of technology, but coping with the complexity of the systems.  
  • W. Roy Schulte
  •  Roy Schulte (Gartner) gave the first keynote talk.   He set the tone of other speakers as classifying event processing as analytics (which is the current hot buzzword),  he said (this is a slight variation about his previous classification) that event processing have three levels: the simple event processing, which we always done, the BPM + state machine which have some event-driven functionality, and the analytics event processing - AKA CEP or ESP, i.e. providing aggregations and pattern matching.  On the financial market front he said that while the original EP applications have been in the front office, it is now getting to the middle and back office in various application areas.   He also sees that the future of inter-systems integrations will be in using events.   On EP as part of analytics he also talked on the BI classification -- descriptive (BAM systems),  predictive (pattern matching is a way to define predictive) and prescriptive (which is still mostly futuristic).    There are also three ways to deliver event processing:  Basic engine,  EP platform (which includes tools for management, debug etc..) and packaged applications  (this classification is not new).


    Thomas Sulzbacher
  • Thomas Sulzbacher, CEO of Starview, talked about his product. He started his talk by saying that he took a flight from SFO to NYC in order to arrive into the conference, and in order to execute the flight, there were 12M  event-driven decisions required, most of them automatic. 




      David Parker
    • David Parker, from Sybase, An SAP company, as he repeatedly reminded us, also classified event processing as part of the analytics solutions of Sybase.  The interesting insight he provided (from Sybase internal sources) is how they view the distribution of the EP market:   42% Finance Sector, 14% government, 11% services, 8% telecommunication 8% healthcare and life sciences, 6% production, 4% retail, 3% education, 2% energy and utilities.     It is interesting to see if other vendors have different perspectives, especially what analysts have to say, since no analyst has produced such a detailed distribution so far.

      Colin Clark
    • Colin Clark, whom I met first time, talked and demoed his cloud event processing solution, that does indexing, clustering. classification, summarization and anomaly detection.  He came along with his business partners that made a draw among the participants that provided them business cards,  and gave some gifts -- I think it was iPad.   


    Dr. John BatesThese talks were all before lunch - after lunch I did not take notes anymore;  there were two talks - one by John Bates, interesting as always, given us concentration of incidents in the financial markets area, among other things, and the last talk (before mine) was Matt Meinel from Informatica (came from the acquisition of  29West).


    Matt Meinel