XML Table Index Semantic Matching for Query Rewrite
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current techniques for determining when an XML table index can be used in XML queries are limited, as they require exact specification of row and column pattern expressions, and queries that do not match these specifications cannot leverage the index, leading to inefficient processing of XML data stored in aggregate form.
Innovation Solution
Generating index definition path expressions by concatenating row and column pattern expressions of an XML table index and comparing them to query expressions, as well as determining semantic equivalence and containment relationships between query and index expressions to determine if an XML query can be rewritten to use the XML table index.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If exact matching of row and column pattern expressions is required for index usage, then index lookup precision is improved, but query processing versatility deteriorates
Solution Approach 1:
The patent transforms the rigid exact-matching parameter into a flexible semantic-equivalence parameter. Instead of requiring identical row and column pattern expressions, the system now evaluates whether queries are semantically equivalent to index definitions, allowing parameter variation while maintaining functional equivalence. This resolves the contradiction by changing the matching criterion from exact string matching to semantic equivalence assessment.
Solution Approach 2:
The patent introduces dynamic query rewriting capability that adapts queries to match index definitions. Rather than static exact matching, the system dynamically rewrites queries to leverage index definitions when semantic equivalence is detected. This dynamic adaptation allows the system to maintain precision while gaining versatility in handling different query formulations.
2Quantity of substance
If XML data is stored in aggregate form, then storage efficiency is improved, but query processing speed deteriorates
Solution Approach 1:
The patent creates XML table indexes in advance that capture the structure and content of aggregate-stored XML data. These pre-computed indexes store metadata about row patterns, column patterns, and path expressions. When queries are executed, the system performs preliminary matching against these pre-built indexes to determine if semantic equivalence exists, enabling efficient access to aggregate-stored data without sacrificing storage efficiency.
Solution Approach 2:
The patent introduces XML table indexes as an intermediary layer between aggregate-stored XML data and queries. This intermediary structure enables efficient query processing by providing a indexed view of the aggregate data, allowing the system to maintain storage efficiency while improving query performance through the mediator index structure.
3Manufacturing precision
If XML table indexes are created with specific row and column patterns, then index creation precision is improved, but query index utilization deteriorates
Solution Approach 1:
The patent introduces dynamic query rewriting that transforms queries to match predefined index definitions. Instead of requiring queries to exactly match index patterns, the system dynamically rewrites queries to leverage existing indexes when semantic equivalence is detected. This dynamic approach maintains precise index creation while significantly improving query index utilization across varied query formulations.
Solution Approach 2:
The patent changes the matching parameter from exact pattern specification to semantic equivalence. The system now evaluates whether queries are semantically equivalent to index definitions rather than requiring identical patterns. This parameter change allows precise index creation to coexist with high query utilization by accepting semantically equivalent variations.
Data Source
AI summary
Techniques are provided for determining whether an XML table index may be used when executing an XML query. An XML table index is defined with a row pattern expression and one or more column pattern expressions. In one technique, an index expression is generated for each row pattern expression-column pattern expression combination. An expression included in the XML query (“query expression”) is compared against one or more of the index expressions. In another technique, even if a query expression does not exactly match a row pattern expression, it is determined whether the query expression is equivalent to the row pattern expression. In another technique, even if a query expression does not exactly match and a row pattern expression, it is determined whether the query expression is “contained by” the row pattern expression.


