Intensive Data Management in Parallel Systems: A Survey
Distributed and Parallel Databases
The state of the art in distributed query processing
ACM Computing Surveys (CSUR)
Distributed query evaluation on semistructured data
ACM Transactions on Database Systems (TODS)
Query Processing in Parallel Relational Database Systems
Query Processing in Parallel Relational Database Systems
Why and how to benchmark XML databases
ACM SIGMOD Record
Efficient algorithms for processing XPath queries
ACM Transactions on Database Systems (TODS)
Using partial evaluation in distributed query evaluation
VLDB '06 Proceedings of the 32nd international conference on Very large data bases
Distributed query evaluation with performance guarantees
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
A Static Load-Balancing Scheme for Parallel XML Parsing on Multicore CPUs
CCGRID '07 Proceedings of the Seventh IEEE International Symposium on Cluster Computing and the Grid
Parallel XML processing by work stealing
Proceedings of the 2007 workshop on Service-oriented computing performance: aspects, issues, and approaches
A Parallel Approach to XML Parsing
GRID '06 Proceedings of the 7th IEEE/ACM International Conference on Grid Computing
The Art of Multiprocessor Programming
The Art of Multiprocessor Programming
Statistics-based parallelization of XPath queries in shared memory systems
Proceedings of the 13th International Conference on Extending Database Technology
Fast and parallel webpage layout
Proceedings of the 19th international conference on World wide web
Executing parallel TwigStack algorithm on a multi-core system
Proceedings of the 11th International Conference on Information Integration and Web-based Applications & Services
Case studies in hardware XPath acceleration
Proceedings of the 4th Annual International Conference on Systems and Storage
Partitioning XML documents for iterative queries
Proceedings of the 16th International Database Engineering & Applications Sysmposium
Processing XML queries and updates on map/reduce clusters
Proceedings of the 16th International Conference on Extending Database Technology
Hi-index | 0.00 |
In this study, we present experiences of parallelizing XPath queries using the Xalan XPath engine on shared-address space multi-core systems. For our evaluation, we consider a scenario where an XPath processor uses multiple threads to concurrently navigate and execute individual XPath queries on a shared XML document. Given the constraints of the XML execution and data models, we propose three strategies for parallelizing individual XPath queries: Data partitioning, Query partitioning, and Hybrid (query and data) partitioning. We experimentally evaluated these strategies on an x86 Linux multi-core system using a set of XPath queries, invoked on a variety of XML documents using the Xalan XPath APIs. Experimental results demonstrate that the proposed parallelization strategies work very effectively in practice; for a majority of XPath queries under evaluation, the execution performance scaled linearly as the number of threads was increased. Results also revealed the pros and cons of the different parallelization strategies for different XPath query patterns.