The structure queries of XQuery result in structural joins of various relationships. While several efficient algorithms have been proposed in evaluating ancestor–descendant and parent–child relationships, few efforts are put on the study on sibling relationship. In this paper, we study the structural joins of preceding-sibling–following-sibling relationship. To accelerate structural joins of parent–child and preceding-sibling–following-sibling relationships, optimizing techniques are employed to filter out and minimize unnecessary reads of elements using parent’s structural information. Then, two efficient structural join algorithms in evaluating sibling relationship are proposed, in which nodes that do not participate in the join can be judged beforehand and then skipped using B+-tree index. Besides, each element list joined is scanned sequentially once at most. Furthermore, output of join results is sorted in document order. Our experimental results not only demonstrate the effectiveness of our optimizing techniques for sibling axes, but also validate the efficiency of our algorithms. To the best of our knowledge, this is the first effort that addresses this problem.
Weitere Kapitel dieses Buchs durch Wischen aufrufen
- Efficient Evaluation of Sibling Relationship in XPath Queries
- Springer Berlin Heidelberg