Cost-based optimizer for an XML data repository within a database
First Claim
1. A method comprising the computer-implemented steps of:
- gathering statistics about XML resources that are stored in a database repository;
storing said statistics; and
in response to a request for access to one or more XML resources from said database repository, computing a computational cost associated with each of one or more methods of accessing said one or more XML resources from said database repository, based on said statistics.
1 Assignment
0 Petitions
Accused Products
Abstract
Cost-based optimizer functionality for an XML database repository provides means for optimizing the execution of database queries that access XML resources in the database repository. Statistics about XML resources that are stored in the database repository are gathered, stored and utilized by a query optimizer to compute computational costs associated with each of multiple methods of accessing particular XML resources requested in a database query. Hence, the optimizer is able to select the most efficient query execution plan based on the costs of possible access paths. In one embodiment, specific statistics about the hierarchical structure of XML resources stored in the XML database repository are gathered, stored in a relational table in the database management system, and used to compute the selectivity of query predicates and the index cost associated with traversing one or more indexes to access requested XML resources.
142 Citations
48 Claims
-
1. A method comprising the computer-implemented steps of:
-
gathering statistics about XML resources that are stored in a database repository;
storing said statistics; and
in response to a request for access to one or more XML resources from said database repository, computing a computational cost associated with each of one or more methods of accessing said one or more XML resources from said database repository, based on said statistics. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A method comprising the computer-implemented steps of:
-
gathering, by a database management system, statistics about XML resource that are stored in a repository of said database management system; and
storing said statistics in said database management system. - View Dependent Claims (39, 40, 41)
-
-
42. A method comprising the computer-implemented steps of:
in response to a request for access to one or more XML resources from a database repository within a database management system, accessing, from said database management system, statistics about the structure of a hierarchy in which said one or more XML resources are logically organized; and
computing a computational cost associated with each of one or more methods of accessing said one or more XML resources from said database repository, based on said statistics. - View Dependent Claims (43, 44, 45, 46)
-
47. A database system comprising:
-
an XML data repository within a relational database management system; and
a query optimizer that receives a database query and, in response to said query, formulates a query execution plan based on computational costs of access paths associated with XML data stored in said repository, wherein said computational costs are based on statistics about an organizational structure of said XML data.
-
-
48. A system comprising:
-
means for gathering statistics about XML resources that are stored in a database repository;
means for storing said statistics; and
means for computing, in response to a request for access to one or more XML resources from said database repository and based on said statistics, a computational cost associated with each of one or more methods of accessing said one or more XML resources from said database repository.
-
Specification