  In distributed Complex Event Processing (CEP) applications with high load but
limited resources, bottleneck operators in the operator graph can significantly
slow down processing of event streams, thus compelling the need to shed load. A
high-quality load shedding strategy that resolves the bottleneck with high
output quality evaluates each event's importance with regards to the
application's final output and drops less important events from the event
stream for the benefit of important ones. So far, no solution has been proposed
that is able to permit good load shedding in distributed, multi-operator CEP
applications. On one hand, shedding strategies have been proposed for
single-operator CEP applications that can measure an event's importance
immediately at the bottleneck operator, only, and thereby ignore the effect of
other streams in the application on an event's importance. On the other hand,
shedding strategies have been proposed for applications with multiple operators
from the area of stream processing that provide a fixed selectivity which is
not given in the conditional CEP operators. We, therefore, propose a
load-shedding solution for distributed CEP applications that maximizes the
application's final output and ensures timely processing of important events by
using a set of CEP-tailored selectivity functions and a linear program, which
is an abstraction of the CEP application. Moreover, our solution ensures a
quality optimal shedder configuration even in the presence of dynamically
changing conditions. With the help of extensive evaluations on both synthetic
and real data, we show that our solution successfully resolves overload at
bottleneck operators and at the same time maximizes the quality of the
application's output.

Distributed, Parallel, and Cluster Computing