Cost-Optimal Execution of Boolean DNF Trees with Shared Streams
Résumé
Several applications process queries expressed as trees of Booleanoperators applied to predicates on sensor data streams, e.g., mobile appsand automotive apps. Sensor data must be retrieved from the sensors, whichincurs a cost, e.g., an energy expense that depletes the battery of a mobile device, abandwidth usage. The objective is to determine the order in whichpredicates should be evaluated so as to shortcut part of the queryevaluation and minimize the expected cost. This problem has been studiedassuming that each data stream occurs at a single predicate. In this workwe study the case in which a data stream occurs in multiple predicates,either when each predicate references a single stream or when a predicatecan reference multiple streams. In the single-stream case we give anoptimal algorithm for a single-level tree and show that the problem isNP-complete for DNF trees. For DNF trees we show that there exists an optimal predicate evaluation order that is depth-first, which provides a basis for designinga range of heuristics. In the multi-stream case we show that the problemis NP-complete even for single-level trees. As in the single stream case,for DNF trees we show that there exists a depth-first leaf evaluation order that isoptimal and we design efficient heuristics.
Domaines
Informatique [cs]Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...