Cost-Optimal Execution of Trees of Boolean Operators with Shared StreamsReportar como inadecuado




Cost-Optimal Execution of Trees of Boolean Operators with Shared Streams - Descarga este documento en PDF. Documentación en PDF para descargar gratis. Disponible también para leer online.

1 ICS - Information and Computer Sciences Hawaii 2 ROMA - Optimisation des ressources : modèles, algorithmes et ordonnancement Inria Grenoble - Rhône-Alpes, LIP - Laboratoire de l-Informatique du Parallélisme 3 LIP - Laboratoire de l-Informatique du Parallélisme

Abstract : The processing of queries expressed as trees of boolean operators applied to predicates on sensor data streams has several applications in mobile computing. Sensor data must be retrieved from the sensors to a query processing device, such as a smartphone, over one or more network interfaces. Retrieving a data item incurs a cost, e.g., an energy expense that depletes the smartphone-s battery. Since the query tree contains boolean operators, part of the tree can be shortcircuited depending on the retrieved sensor data. An interesting problem is to determine the order in which predicates should be evaluated so as to minimize the expected query processing cost. This problem has been studied in previous work assuming that each data stream occurs in a single predicate. In this work we remove this assumption since it does not necessarily hold for real-world queries. Our main results are an optimal algorithm for single-level trees and a proof of NP-completeness for DNF trees. For DNF trees, however, we show that there is an optimal predicate evaluation order that corresponds to a depth-first traversal. This result provides inspiration for a class of heuristics. We show that one of these heuristics largely outperforms other sensible heuristics, including the one heuristic proposed in previous work for our general version of the query processing problem.

Résumé : Le traitement de requêtes, exprimées sous forme d-arbres d-opérateurs booléens appliqués à des prédicats sur des flux de données de senseurs, a de nombreuses applications dans le domaine du calcul mobile. Les données doivent être transférées des senseurs vers l-appareil de traitement des données, par exemple un {smartphone}. Transférer une donnée induit un coût, par exemple une consommation énergétique qui diminuera la charge de la batterie du smartphone. Comme l-arbre de requêtes contient des opérateurs booléens, des pans de l-arbre peuvent être court-circuités en fonction des données récupérées. Un problème intéressant est de déterminer l-ordre dans lequel les prédicats doivent être évalués afin de minimiser l-espérance du coût du traitement de la requête. Ce problème a déjà été étudié sous l-hypothèse que chaque flux apparaît dans un seul prédicat. Dans le présent travail nous éliminons cette hypothèse qui ne correspond pas forcément à la réalité. Nos principaux résultats sont un algorithme optimal pour les arbres avec un seul niveau, et une preuve de NP-complétude pour les arbres sous forme normale disjonctive. Pour les arbres sous forme normale disjonctive, cependant, nous montrons qu-il existe un ordre optimal d-évaluation des prédicats qui correspond à un parcours en profondeur d-abord. Ce résultat nous sert à concevoir toute une classe d-heuristiques. Nous montrons que l-une de ces heuristiques a de bien meilleurs résultats que les autres heuristiques et, entre autres, que la seule heuristique précédemment proposée pour le cadre général.

Keywords : query processing boolean operators energy scheduling greedy algorithm data sharing





Autor: Henri Casanova - Lipyeow Lim - Yves Robert - Frédéric Vivien - Dounia Zaidouni -

Fuente: https://hal.archives-ouvertes.fr/



DESCARGAR PDF




Documentos relacionados