Optimization of continuous queries with shared expensive filters

Conference Paper

We consider the problem of optimizing and executing multiple continuous queries, where each query is a conjunction of filters and each filter may occur in multiple queries. When filters are expensive, significant performance gains are achieved by sharing filter evaluations across queries. A shared execution strategy in our scenario can either be fixed, in which filters are evaluated in the same predetermined order for all input, or adaptive, in which the next filter to be evaluated is chosen at runtime based on the results of the filters evaluated so far. We show that as filter costs increase, the best adaptive strategy is superior to any fixed strategy, despite the overhead of adaptivity. We show that itis NP-hard to find the optimal adaptive strategy, even if we are willing to approximate within any factor smaller than m where m is the number of queries. We then present a greedy adaptive execution strategy and show that it approximates the best adaptive strategy to within a factor O(log 2m log n) where n is the number of distinct filters. We also give a precomputation technique that can reduce the execution overhead of adaptive strategies. Copyright 2007 ACM.

Full Text

Duke Authors

Cited Authors

  • Munagala, K; Srivastava, U; Widom, J

Published Date

  • October 29, 2007

Published In

  • Proceedings of the Acm Sigact Sigmod Sigart Symposium on Principles of Database Systems

Start / End Page

  • 215 - 224

International Standard Book Number 10 (ISBN-10)

  • 1595936858

International Standard Book Number 13 (ISBN-13)

  • 9781595936851

Digital Object Identifier (DOI)

  • 10.1145/1265530.1265561

Citation Source

  • Scopus