Object-oriented query execution data structure
First Claim
1. A method of executing a query, comprising:
- (a) accessing, from a query execution data structure representative of a database query access plan for the query, at least one of a parent node object and a child node object from among a plurality of query node objects arranged into a tree relationship; and
(b) manipulating at least a subset of a plurality of attributes referenced in an attribute data structure defined in the query execution data structure by processing at least one operation defined in an attribute operation data structure defined in the accessed node object, wherein processing the operation includes obtaining a reference for at least one attribute in the subset of attributes from the attribute data structure.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus, program product and method represent a database query access plan a query execution data structure including a plurality of query node objects arranged into a tree relationship to define a parent node object and at least one child node object, and an attribute data structure that references a plurality of attributes utilized by the query execution data structure. At least one of the parent and child node objects includes an attribute operation data structure configured to manipulate at least a subset of the plurality of attributes in the attribute data structure by accessing the attribute operation data structure. By partitioning the functionality of a query access plan into a collection of node objects and an attribute data structure, and then providing within at least a subset of the node objects attribute operation data structures that manipulate the attribute data structure, the resulting query engine architecture becomes significantly extendible and adaptable. Moreover, through appropriate selection of attribute operations, and coding of such operations using directly executable program code, optimal query engine performance may also be obtained.
-
Citations
28 Claims
-
1. A method of executing a query, comprising:
-
(a) accessing, from a query execution data structure representative of a database query access plan for the query, at least one of a parent node object and a child node object from among a plurality of query node objects arranged into a tree relationship; and
(b) manipulating at least a subset of a plurality of attributes referenced in an attribute data structure defined in the query execution data structure by processing at least one operation defined in an attribute operation data structure defined in the accessed node object, wherein processing the operation includes obtaining a reference for at least one attribute in the subset of attributes from the attribute data structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of building an access plan for a query, comprising:
-
(a) generating a query execution data structure;
(b) populating the query execution data structure with an attribute data structure that references a plurality of attributes to be used during execution of a query;
(c) populating the query execution data structure with a plurality of node objects arranged into a tree relationship, the plurality of node objects including at least one parent node object and a child node object, and (d) populating at least one of the parent and child node objects with an attribute operation data structure configured to manipulate at least a subset of the plurality of attributes by accessing the attribute operation data structure. - View Dependent Claims (13)
-
-
14. An apparatus, comprising:
-
(a) a memory within which is resident a query execution data structure representative of a database query access plan, the query execution data structure including a plurality of query node objects arranged into a tree relationship to define a parent node object and at least one child node object, and an attribute data structure that references a plurality of attributes utilized by the query execution data structure, wherein at least one of the parent and child node objects includes an attribute operation data structure configured to manipulate at least a subset of the plurality of attributes by accessing the attribute operation data structure; and
(b) program code configured to access the query execution data structure resident in the memory. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A program product, comprising:
-
(a) a query execution data structure representative of a database query access plan, the query execution data structure including a plurality of query node objects arranged into a tree relationship to define a parent node object and at least one child node object, and an attribute data structure that references a plurality of attributes utilized by the query execution data structure, wherein at least one of the parent and child node objects includes an attribute operation data structure configured to manipulate at least a subset of the plurality of attributes by accessing the attribute operation data structure; and
(b) a signal bearing medium bearing the query execution data structure. - View Dependent Claims (28)
-
Specification