Yesterday, Microsoft’s patent application for Event Stream Processing was published. This surprised me for a couple of reasons. One, I had no idea Microsoft was working on ESP. Two, the listed invention of a “Real time event stream processor to ensure up-to-date and accurate result” appears to be a patent of the fundamental concepts of event stream processing. From the abstract:
“Identifying a transaction from a real time event stream having latency. A method of the invention receives events from the real time event stream where events define a plurality of transactions to be identified. Each of the transactions includes a first event and a second event; the first event has a first latency relative to the real time event stream and the second event has a second latency relative to the real time event stream. The first event is identified from the received real time event stream, and a time is record when the first event is received. The method determines a time period during which the second event occurs as a function of the first latency, the recorded time of the first event, and the second latency. The transaction having the first and second events is identified based on the determined time period of the second event.”
Ok, I can hear the cynics amongst you saying “and that surprises you, how?” So, I guess what really surprises/confounds me, is that something like this, that has been worked on for years in research projects, and is implemented in production products, can be an invention of Microsoft, as of the June 9, 2005 application date. Reminds me of the Y2K windowing patent, and of course, 1-click shopping. This leads me to second (or 100th) the recent question on techdirt But What are Software Patents Good For?
Anyway, I welcome insights from those better informed on software patents, and I encourage the Event Processing Community/Technical Society to discuss/challenge this patent.