Distributed Composite Event Detection in Publish/Subscribe Networks - A Case for Self-Organization - Seib, Enrico; Parzyjegla, Helge; Mühl, Gero (Electronic Communications of the EASST, 2011)
Event-based cooperation is well suited to model the interaction of components in distributed, dynamically changing environments prevalent, for example, in ubiquitous computing scenarios. Publish/subscribe middleware can be used to efficiently implement event-based cooperation. However, while application components may be interested not only in single events, but also in spatio-temporal patterns of events, called composite events, research in the area of routing algorithms for publish/subscribe systems has focused mainly on efficiently routing individual notifications from producers to their consumers without providing means for correlation. In order to avoid every application having to subscribe to all events that may form an interesting event pattern to detect, which can waste large amounts of network bandwidth, we propose to realize composite event detection as a middleware service. While a centralized implementation of this service would be simpler to realize, we favor distributed composite event detection inside the broker network because this way locality in publication rates and subscriber interests can be exploited. However, placing detectors for composite events such that the required network bandwidth is minimized is a complex on-line optimization problem. In this paper, we present our ideas to place composite event detectors inside the publish/subscribe broker network and to adapt this placement at runtime. The placement is based on a self-organizing optimization using a spring relaxation heuristic considering multiple event patterns.