Esper 2.1 has shipped. Esper is a cool project that looks for patterns in streams of events. You can use a SQL-like language (EPL) to create queries against groups of events.
Esper is very useful in electronic trading, fraud detection, RFID processing, etc.
You will notice that I get a bit of credit in the 2.1 release note. I should note that Sanka Samaranyake helped me out with this code.
Esper supports different "event" types, including JavaBean, Map and XML. The existing XML support was built on DOM.
I added support for Streaming XML events via Apache Axiom. Axiom is a tree view built on top of the StAX streaming XML pull parser, and it supports efficient XPath processing via Jaxen. What this means is that you can have an XPath expression at the start of an event, and the parser will execute it without parsing the complete event.
I was motivated to write this for two reasons. Firstly, Axiom is very simple to replace DOM with. So you can add streaming support to any DOM application very quickly. Secondly, Axiom is the message format that Apache Synapse uses, and as you might have seen from previous blog posts, I've been putting Synapse and Esper together for a while now.
Sanka did some performance tests with the pre-release code and it showed some significant performance benefits over the existing DOM parsing. And of course those benefits will be even more pronounced when using Esper and Synapse together - because there is now no need to convert the message to DOM. Look out for an updated Synapse/Esper mediator in the near future.
Finally - congratulations to Thomas and the team at Esper on the release.
Monday, 12 May 2008
Subscribe to:
Post Comments (Atom)
1 comments:
1. Are you comparing Axiom/Woodstox to just xerces? Because thats really not a fair comparison. You should use Woodstox + W3C DOM for a fair comparison.
2. You're still inherently limited to do one XPath expression at a time. So if you're using it for routing it can get slower and slower depending on how many XPath expressions you have.
Which is why SXC exists :-)
New release is coming soon...
Post a Comment