Abstract. Efficient subsumption checking, deciding whether a subscription or publication is subsumed by a set of previously defined subscriptions, is of paramount importance for publish/subscribe systems. It provides the core system functionality-matching of publications to subscriber needs expressed as subscriptions-and additionally, reduces the overall system load and generated traffic since the covered subscriptions are not propagated in distributed environments. As the subsumption problem was shown previously to be co-NP complete and existing solutions typically apply pairwise comparisons to detect the subsumption relationship, we propose a 'Monte Carlo type' probabilistic algorithm for the general subsumption problem. It determines whether a publication/subscription is covered by a disjunction of subscriptions in O(k m d), where k is the number of subscriptions, m is the number of distinct attributes in subscriptions, and d is the number of tests performed to answer a subsumption question. The probability of error is problem specific and typically very small, and determines an upper bound on d in polynomial time prior to the algorithm execution. Our experimental results show significant gains in term of subscription set reduction which has favorable impact on the overall system performance as it reduces the total computational costs and networking traffic. Furthermore, the expected theoretical bounds underestimate algorithm performance because it performs much better in practice due to introduced optimizations, and is adequate for fast forwarding of subscriptions, especially in resource scarce environments.
An optimization of subscription merging is presented by Ouksel et al. REF where they propose a Monte Carlo type algorithm.
Efficient Probabilistic Subsumption Checking for Content-Based Publish/Subscribe Systems
Middleware
Computer Science