Query evaluation techniques for large databases
ACM Computing Surveys (CSUR)
Predicate migration: optimizing queries with expensive predicates
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Optimizing disjunctive queries with expensive predicates
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Query execution techniques for caching expensive methods
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Structure and Interpretation of Computer Programs
Structure and Interpretation of Computer Programs
Filtering with Approximate Predicates
VLDB '98 Proceedings of the 24rd International Conference on Very Large Data Bases
Optimization of Queries with User-defined Predicates
VLDB '96 Proceedings of the 22th International Conference on Very Large Data Bases
Evaluating probabilistic queries over imprecise data
Proceedings of the 2003 ACM SIGMOD international conference on Management of data
Adaptive filters for continuous queries over distributed data streams
Proceedings of the 2003 ACM SIGMOD international conference on Management of data
Numerical Methods for Unconstrained Optimization and Nonlinear Equations (Classics in Applied Mathematics, 16)
Monitoring streams: a new class of data management applications
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
On-the-fly sharing for streamed aggregation
Proceedings of the 2006 ACM SIGMOD international conference on Management of data
Adaptive execution of variable-accuracy functions
VLDB '06 Proceedings of the 32nd international conference on Very large data bases
Prefilter: predicate pushdown at streaming speeds
SSPS '08 Proceedings of the 2nd international workshop on Scalable stream processing system
Query result caching for multiple event-driven continuous queries
Information Systems
Hi-index | 0.00 |
Many analysis and monitoring applications require the repeated execution of expensive modeling functions over streams of rapidly changing data. These applications can often be expressed declaratively, but the continuous query processors developed to date are not designed to optimize queries with expensive functions. To speed up such queries, we present CASPER: the CAching System for PrEdicate Result ranges. CASPER computes and caches predicate result ranges, which are ranges of stream input values where the system knows the results of expensive predicate evaluations. Over time, CASPER expands ranges so that they are more likely to contain future stream values. This paper presents the CASPER architecture, as well as algorithms for computing and expanding ranges for a large class of predicates. We demonstrate the effectiveness of CASPER using a prototype implementation and a financial application using real bond market data.