Multithreading-Enabled Active Replication for Event Stream Processing Operators
- 1 September 2009
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Event stream processing (ESP) systems are very popular in monitoring applications. Algorithmic trading, network monitoring and sensor networks are good examples of applications that rely upon ESP systems. As these systems become larger and more widely deployed, they have to answer increasingly stronger requirements that are often difficult to satisfy. Fault-tolerance is a good example of such a non-trivial requirement. Making ESP operators fault-tolerant can add considerable performance overhead to the application. In this paper, we focus on active replication as an approach to provide fault-tolerance to ESP operators. More precisely, we address the performance costs of active replication for operators in distributed ESP applications.We use a speculation mechanism based on software transactional memory (STM) to achieve the following goals: (i) enable replicas to make progress using optimistic delivery; (ii) enable early forwarding of speculative computation results; (iii) enable active replication of multi-threaded operators using transactional executions. Experimental evaluation shows that, using this combination of mechanisms, one can implement highly efficient fault-tolerant ESP operators.Keywords
This publication has 17 references indexed in Scilit:
- Minimizing Latency in Fault-Tolerant Distributed Stream Processing SystemsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2009
- Speculative out-of-order event processing with software transaction memoryPublished by Association for Computing Machinery (ACM) ,2008
- Active replication of multithreaded applicationsIEEE Transactions on Parallel and Distributed Systems, 2006
- Finding frequent items in data streamsTheoretical Computer Science, 2004
- Using optimistic atomic broadcast in transaction processing systemsIEEE Transactions on Knowledge and Data Engineering, 2003
- Perfect failure detection in timed asynchronous systemsIEEE Transactions on Computers, 2003
- Deterministic scheduling for transactional multithreaded replicasPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2000
- Unreliable failure detectors for reliable distributed systemsJournal of the ACM, 1996
- Software transactional memoryPublished by Association for Computing Machinery (ACM) ,1995
- Virtual timeACM Transactions on Programming Languages and Systems, 1985