XQuery optimization based on program slicing

XQuery has become the standard query language for XML. The efforts put on this language have produced mature and efficient implementations of XQuery processors. However, in practice the efficiency of XQuery programs is strongly dependent on the ability of the programmer to combine different queries which often affect several XML sources that in turn can be distributed in different branches of the organization. Therefore, techniques to reduce the amount of data loaded and also to reduce the intermediate structures computed by queries is a necessity. In this work we propose a novel technique that allows the programmer to automatically optimize a query in such a way that unnecessary intermediate computations are avoided, and, in addition, it identifies the paths in the source XML documents that are really required to resolve the query.

[1]  Giuseppe Castagna,et al.  Type-based XML projection , 2006, VLDB.

[2]  Frank Tip,et al.  A survey of program slicing techniques , 1994, J. Program. Lang..

[3]  Stéphane Bressan,et al.  Accelerating queries by pruning XML documents , 2005, Data Knowl. Eng..

[4]  Luís Soares Barbosa,et al.  Component Identification Through Program Slicing , 2006, FACS.

[5]  Scott Boag,et al.  XQuery 1.0 : An XML Query Language , 2007 .

[6]  Amélie Marian,et al.  Projecting XML Documents , 2003, VLDB.

[7]  Stefanie Scherzinger,et al.  The GCX System: Dynamic Buffer Minimization in Streaming XQuery Evaluation , 2007, VLDB.

[8]  W. Marsden I and J , 2012 .

[9]  Christoph Koch,et al.  On the role of composition in XQuery , 2005, WebDB.

[10]  Talel Abdessalem,et al.  Pruning nested XQuery queries , 2008, CIKM '08.

[11]  Germán Vidal,et al.  Static Slicing of Rewrite Systems , 2007, WFLP.

[12]  Christopher Mark Brown,et al.  Tool support for refactoring Haskell programs , 2008 .

[13]  Torsten Grust,et al.  Pathfinder: XQuery - The Relational Way , 2005, VLDB.

[14]  Amélie Marian,et al.  Implementing Xquery 1.0: The Galax Experience , 2003, VLDB.

[15]  Michael H. Kay Ten Reasons Why Saxon XQuery is Fast , 2008, IEEE Data Eng. Bull..

[16]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[17]  Maxim N. Grinev,et al.  Rewriting-based optimization for XQuery transformational queries , 2005, 9th International Database Engineering & Application Symposium (IDEAS'05).

[18]  Joe D. Warren,et al.  The program dependence graph and its use in optimization , 1984, TOPL.

[19]  Stefanie Scherzinger Bulk data in main memory-based XQuery evaluation , 2007, XIME-P '07.