Efficient method of using XML value indexes without exact path information to filter XML documents for more specific XPath queries
AssigneeInternational Business Machines Corporation
InventorsMengchu Cai, Ruiping Li, Guogen Zhang
Life of this patent
Estimating the term…
Abstract
A system and method is provided for query processing comprises: creating an index of a database and ordering a set of index candidates from the index into a list based on a set of heuristic rules. A query defining a query path is then reduced into a list of single path expressions. Each index candidate is matched against the list of single path expressions according to the ordering of the index candidates. The matched candidate nodes are also verified to insure that they satisfy the query path.
Claims15
A method for query processing comprising:
- creating, via a processor, an index of a database;
- ordering, via the processor, a set of index candidates from the index into a list based on heuristic rules, wherein the heuristic rules reduce a matching cost for an index pattern via a preference for a matching without a descendant axis over a matching with a descendant axis and via a preference for a matching without a wildcard over a matching with a wildcard and via a preference for a pattern with greater number of steps than for a pattern with fewer number of steps, wherein determination of the matching with or without a descendant axis is performed prior to determination of the matching with or without a wildcard, and wherein the determination of the matching with or without a wildcard is performed prior to determination of whether a current pattern contains fewer steps than a previous pattern;
- and
- reducing, via the processor, a query defining a query path into a list of single path expressions.
A system for query processing, comprising:
- a memory;
- and
- a processor coupled to said memory, wherein said processor performs operations, said operations comprising:
- creating an index of a database;
- ordering a set of index candidates from the index into a list based on heuristic rules, wherein the heuristic rules reduce a matching cost for an index pattern via a preference for a matching without a descendant axis over a matching with a descendant axis and via a preference for a matching without a wildcard over a matching with a wildcard and via a preference for a pattern with greater number of steps than for a pattern with fewer number of steps, wherein determination of the matching with or without a descendant axis is performed prior to determination of the matching with or without a wildcard, and wherein the determination of the matching with or without a wildcard is performed prior to determination of whether a current pattern contains fewer steps than a previous pattern;
- and
- reducing a query defining a query path into a list of single path expressions.
An article of manufacture for use in a computer system tangibly embodying computer instructions executable by said computer system to perform operations, the operations comprising:
- creating, via a processor, an index of a database;
- ordering, via the processor, a set of index candidates from the index into a list based on heuristic rules, wherein the heuristic rules reduce a matching cost for an index pattern via a preference for a matching without a descendant axis over a matching with a descendant axis and via a preference for a matching without a wildcard over a matching with a wildcard and via a preference for a pattern with greater number of steps than for a pattern with fewer number of steps, wherein determination of the matching with or without a descendant axis is performed prior to determination of the matching with or without a wildcard, and wherein the determination of the matching with or without a wildcard is performed prior to determination of whether a current pattern contains fewer steps than a previous pattern;
- and
- reducing, via the processor, a query defining a query path into a list of single path expressions.
Dependencies are inferred from the claim text.