Issue No. 08 - August (2006 vol. 17)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TPDS.2006.107
Stream processing has become increasingly important as many emerging applications call for continuous real-time processing over data streams, such as voice-over-IP telephony, security surveillance, and sensor data analysis. In this paper, we propose a composable stream processing system for cooperative peer-to-peer environments. The system can dynamically select and compose stream processing elements located on different peers into user desired applications. We investigate multiple alternative approaches to composing stream applications: 1) global-state-based centralized versus local-state-based distributed algorithms for initially composing stream applications at setup phase. The centralized algorithm performs periodical global state maintenance while the distributed algorithm performs on-demand state collection. 2) Reactive versus proactive failure recovery schemes for maintaining composed stream applications during runtime. The reactive failure recovery algorithm dynamically recomposes a new stream application upon failures while the proactive approach maintains a number of backup compositions for failure recovery. We conduct both theoretical analysis and experimental evaluations to study the properties of different approaches. Our study illustrates the performance and overhead trade-offs among different design alternatives, which can provide important guidance for selecting proper algorithms to compose stream applications in cooperative peer-to-peer environments
distributed algorithms, peer-to-peer computing, system recovery,cooperative peer-to-peer environments, voice-over-IP telephony, security surveillance, sensor data analysis, stream processing system, global-state-based centralized algorithm, local-state-based distributed algorithm, periodical global state maintenance, on-demand state collection, reactive failure recovery scheme, proactive failure recovery scheme, stream application composing,Peer to peer computing, Streaming media, Internet telephony, Data security, Surveillance, Data analysis, Distributed algorithms, Runtime, Quality of service, Polynomials,Peer-to-peer, stream processing, service composition, resource management, quality-of-service.
"On Composing Stream Applications in Peer-to-Peer Environments", IEEE Transactions on Parallel & Distributed Systems, vol. 17, no. , pp. 824-837, August 2006, doi:10.1109/TPDS.2006.107