Magic sets and other strange ways to implement logic programs (extended abstract)
PODS '86 Proceedings of the fifth ACM SIGACT-SIGMOD symposium on Principles of database systems
Principles of database and knowledge-base systems, Vol. I
Principles of database and knowledge-base systems, Vol. I
A history and evaluation of System R
Communications of the ACM
Jdbc Database Access with Java: A Tutorial and Annotated Reference
Jdbc Database Access with Java: A Tutorial and Annotated Reference
SQL4X: A Flexible Query Language for XML and Relational Databases
DBPL '01 Revised Papers from the 8th International Workshop on Database Programming Languages
Optimal implementation of conjunctive queries in relational data bases
STOC '77 Proceedings of the ninth annual ACM symposium on Theory of computing
Conjunctive queries over trees
PODS '04 Proceedings of the twenty-third ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
XJ: facilitating XML processing in Java
WWW '05 Proceedings of the 14th international conference on World Wide Web
System RX: one part relational, one part XML
Proceedings of the 2005 ACM SIGMOD international conference on Management of data
Towards an enterprise XML architecture
Proceedings of the 2005 ACM SIGMOD international conference on Management of data
LINQ: reconciling object, relations and XML in the .NET framework
Proceedings of the 2006 ACM SIGMOD international conference on Management of data
Efficient evaluation of n-ary conjunctive queries over trees and graphs
WIDM '06 Proceedings of the 8th annual ACM international workshop on Web information and data management
Evaluation of datalog extended with an XPath predicate
Proceedings of the 9th annual ACM international workshop on Web information and data management
NGITS'06 Proceedings of the 6th international conference on Next Generation Information Technologies and Systems
Evaluating very large datalog queries on social networks
Proceedings of the 12th International Conference on Extending Database Technology: Advances in Database Technology
Hi-index | 0.00 |
Conjunctive queries (CQs) are a common abstraction for many query languages (or significant parts thereof) for relational data, XML data or both, such as SQL, XPath, XQuery, XSLT and SQL4X. This work considers the joint querying of relational and XML data by adding an XPath predicate to the CQ formalism. CQs are a basic building block of query processing understanding, and in that respect, adding an XPath predicate is a natural extension. Relational and XML data are "connected" either via references to XML nodes that are stored in relations (essentially oids, usually the result of previous queries) or via atomic text values. Then, relational and XML data are jointly referenced by allowing variables to be shared by relational and XPath predicates. Our approach is that of co-processing of the query using an XPath processor and a relational data processor which operate separately, each on its type of data. The algorithms use known bindings to variables in the query in order to efficiently use the separate processors. We design and compare two such algorithms for evaluating CQs with XPath predicates. Column-Based On-Demand reduces the query evaluation problem to performing a join over ordinary relations. Quick On-Demand offers a controlled way to explore the evaluation space, using a heuristic procedure in the course of a step-wise evaluation of the query. Both algorithms avoid the need to use a sophisticated cost model as required by a standard evaluation procedure. We experimented with both algorithms on various size databases and query types. Each of the new algorithms performs best for different query types and both appear very promising. To calibrate, we transformed the queries to XQuery. Interestingly, the execution times are often favorable for our (not highly optimized) system.