XQuery Pre-Processing Using Schema and Instance Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing XML database systems face inefficiencies in query processing due to the limitations of using schema data alone for pre-processing XQueries, particularly when search conditions are complex, leading to substantial time and processing power requirements.

Innovation Solution

A method that combines schema data with accumulated instance data to provide typing information for XQuery pre-processing, allowing for the reduction of the number of documents to be examined and optimal index usage, by identifying and excluding irrelevant pointers based on the XPath expression's location steps and axes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If schema data alone is used for typing during XQuery pre-processing, then the pre-processing step is simple, but the number of documents to be examined during query execution remains large, leading to substantial processing time

Engineering Contradiction:
Improvepre-processing complexityVSAvoidquery execution time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent performs preliminary analysis of instance data during the pre-processing phase to identify which schema pointers actually occur in the database. This preliminary action creates a filtered set of relevant pointers before query execution, reducing the search space without adding significant complexity to the pre-processing step.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the parameter of typing information from complete schema coverage to selective schema coverage based on actual instance data. By modifying which schema pointers are included in the typing information (from all possible pointers to only those that occur), the system reduces execution time while maintaining acceptable pre-processing complexity.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If complete schema typing is performed, then all possible path expressions are covered, but irrelevant documents cannot be excluded, increasing the number of documents to be searched

Engineering Contradiction:
Improvetyping completenessVSAvoidquery execution efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts only the relevant subset of schema pointers from the complete schema based on accumulated instance data. By taking out and retaining only those pointers that actually occur in the database, the system maintains reliability for actual queries while improving productivity by excluding irrelevant documents from the search.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial typing by analyzing instance data to determine which schema pointers are necessary. Instead of performing complete schema typing (excessive action), the system performs only the necessary typing based on actual data patterns, thereby improving query execution efficiency while maintaining sufficient reliability.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If instance data analysis is added to schema data for typing, then the set of pointers can be reduced to improve query execution, but the pre-processing step becomes more complex

Engineering Contradiction:
Improvequery execution efficiencyVSAvoidpre-processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs preliminary analysis of instance data to build a mapping between path expressions and actual schema pointers. This preliminary action is done once during pre-processing, and the results are cached for use during query execution, thereby improving productivity without significantly increasing the complexity of subsequent query processing.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8583623B2Method and database system for pre-processing an XQuery
Publication Date: 2013.11.12 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8583623B2 patent drawing
  • US8583623B2 patent drawing
  • US8583623B2 patent drawing

AI summary

A method of pre-processing an XQuery on a XML data base and may comprise parsing the XQuery to obtain an abstract syntax tree and typing the abstract syntax tree to provide at least one pointer into a schema for XML documents of the XML data base. The typing step may involve the use of schema and accumulated instance data of the XML data base. Use of the accumulated instance data in addition to schema data allows for reduction of the set of pointers to a smaller set, which in turn reduces the number of documents to be examined when the query is executed.