Esper events are modeled in clj-esper as regular maps (albeit with some metadata), and can be created with the defevent macro. The new-event function constructs a map with all fields defined (and with their values coerced- although these mappings are a little incomplete currently, they do enough for me :).
( new-event WebRequest :request "/ blah" :http_referer "-" :status 200 )
I had originally started an implementation based around defrecord and building classes …
quick intro to StreamSQL, the Esper engine, and a example to apply it to a real-time stream>.batch-processing is not the panacea to every problem. allows us to easily filter, aggregate, and even merge multiple realtime streams to detect correlations, run custom calculations, and much more - all without extra code! A
ESP with Esper
Going from abstract to more concrete, Esper is an which definitely deserves some attention. Started in 2004 by Thomas Bernhardt for a financial application, it is implemented in ESP and correlation engine and provides a fully featured , fast ESP library with a powerful list of extensions. Esper keeps all data structures in memory (no external database required) and is multi-thread safe and able to make use of …