A High Performance Engine for Concurrent CEP in Erlang
This paper describes the architecture, prototype implementation and performance analysis of a complex event processing engine that can meet soft real time constraints, and scale up to many thousands of concurrent events. We have avoided the resource overheads associated with the processing of large numbers of concurrent events (such as, for example, those generated by user sessions in a web site) by using lightweight Erlang processes and a ‘shared nothing’ architecture. We demonstrate how this approach can achieve predictable event processing times under varying loads, using only modest hardware resources in an SMP architecture.
KeywordsEvent Pattern User Session Concurrent Event Complex Event Processing Connected User
Unable to display preview. Download preview PDF.
- 1.Luckham, D.: The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems. Addison-Wesley (2002)Google Scholar
- 2.Magid, Y., Oren, D., Botzer, D., Adi, A., Shulman, B., Rabinovich, E., Barnea, M.: Generating real-time complex event-processing applications. IBM Systems Journal Archive 47(2) (April 2008)Google Scholar
- 3.Mansouri-Samani, M., Sloman, M.: GEM: A generalised event monitoring language for distributed systems. Distributed Systems Engineering 4(2) (1997)Google Scholar
- 4.Object Design. Object Design Introduces Real-Time Market Data Application for the Financial Industry; Captures 10,000, and Queries More Than One Million, Market Data Events Per Second (2001), http://www.thefreelibrary.com/Object+Design+Introduces+Real-Time+Market+Data+Application+for+the...-a074517138
- 5.Paschke, A.: ECA-RuleML: An Approach combining ECA Rules with temporal interval-based KR Event/Action Logics and Transactional Update Logics, IBIS, Technische Universität Mün-chen, Technical Report 11-2005Google Scholar