Clustering strategies in O2: an overview
Building an object-oriented database system
EDBT '02 Proceedings of the Worshops XMLDM, MDDE, and YRWS on XML-Based Data Management and Multimedia Engineering-Revised Papers
CDuce: an XML-centric general-purpose language
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Types for path correctness of XML queries
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
Pattern tree algebras: sets or sequences?
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Accelerating queries by pruning XML documents
Data & Knowledge Engineering
XMark: a benchmark for XML data management
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
VLDB '03 Proceedings of the 29th international conference on Very large data bases - Volume 29
XPathMark: an XPath benchmark for the XMark generated data
XSym'05 Proceedings of the Third international conference on Database and XML Technologies
A full pattern-based paradigm for XML query processing
PADL'05 Proceedings of the 7th international conference on Practical Aspects of Declarative Languages
The GCX system: dynamic buffer minimization in streaming XQuery evaluation
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
Bulk data in main memory-based XQuery evaluation
XIME-P '07 Proceedings of the 4th international workshop on XQuery implementation, experience and perspectives
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
Semantic query optimization for processing XML streams with minimized memory footprint
DataX '08 Proceedings of the 2008 EDBT workshop on Database technologies for handling XML information on the web
Type inference and type checking for queries on execution traces
Proceedings of the VLDB Endowment
Querying web-based applications under models of uncertainty
Proceedings of the VLDB Endowment
Proceedings of the 17th ACM conference on Information and knowledge management
Detection of corrupted schema mappings in XML data integration systems
ACM Transactions on Internet Technology (TOIT)
Schema-based independence analysis for XML updates
Proceedings of the VLDB Endowment
Destabilizers and independence of XML updates
Proceedings of the VLDB Endowment
Projection for XML update optimization
Proceedings of the 14th International Conference on Extending Database Technology
Precision and complexity of XQuery type inference
Proceedings of the 13th international ACM SIGPLAN symposium on Principles and practices of declarative programming
Types and constraints: from relational to XML data
SDKB'10 Proceedings of the 4th international conference on Semantics in data and knowledge bases
XQuery optimization based on program slicing
Proceedings of the 20th ACM international conference on Information and knowledge management
Skeleton automata for FPGAs: reconfiguring without reconstructing
SIGMOD '12 Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data
Type-based detection of XML query-update independence
Proceedings of the VLDB Endowment
Partitioning XML documents for iterative queries
Proceedings of the 16th International Database Engineering & Applications Sysmposium
XML query-update independence analysis revisited
Proceedings of the 2012 ACM symposium on Document engineering
Optimizing XML querying using type-based document projection
ACM Transactions on Database Systems (TODS)
A survey on XML streaming evaluation techniques
The VLDB Journal — The International Journal on Very Large Data Bases
Optimizing XML queries: Bitmapped materialized views vs. indexes
Information Systems
XLynx—An FPGA-based XML filter for hybrid XQuery processing
ACM Transactions on Database Systems (TODS) - Invited papers issue
Hi-index | 0.00 |
XML data projection (or pruning) is one of the main optimization techniques recently adopted in the context of main-memory XML query-engines. The underlying idea is quite simple: given a query Q over a document D, the subtrees of D not necessary to evaluate Q are pruned, thus obtaining a smaller document D'. Then Q is executed over D', hence avoiding to allocate and process nodes that will never be reached by navigational specifications in Q.In this article, we propose a new approach, based on types, that greatly improves current solutions. Besides providing comparable or greater precision and far lesser pruning overhead our solution, unlike current approaches, takes into account backward axes, predicates, and can be applied to multiple queries rather than just to single ones. A side contribution is a new type system for XPath able to handle backward axes, which we devise in order to apply our solution.The soundness of our approach is formally proved. Furthermore, we prove that the approach is also complete (i.e., yields the best possible type-driven pruning) for a relevant class of queries and DTDs, which include nearly all the queries used in the XMark and XPathMark benchmarks. These benchmarks are also used to test our implementation and show and gauge the practical benefits of our solution.