Multiple Result Sets Generated from Single Pass Through a Dataspace
First Claim
1. A method of performing a query of a database, the method comprising:
- receiving a database query, the database query including first and second operations respectively configured to generate first and second disjoint results sets from a dataspace;
analyzing the database query to identify a set of attributes from the dataspace that are used by at least one of the first and second operations in the database query; and
during execution of the database query, iteratively processing a plurality of records from the dataspace in a single pass, including, for each of the plurality of records, processing such record by retrieving the plurality of attributes for such record from the dataspace and performing each of the first and second operations on the record using the retrieved attributes for such record to build the first and second disjoint results sets.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, apparatus and program product are provided for performing a query of a database. A database query is received, which includes first and second operations respectively configured to generate first and second disjoint results sets from a dataspace. The database query is analyzed to identify a set of attributes from the dataspace that are used by at least one of the first and second operations in the database query. During execution of the database query, a plurality of records from the dataspace is iteratively processed in a single pass, including, for each of the plurality of records, processing such record by retrieving the plurality of attributes for such record from the dataspace and performing each of the first and second operations on the record using the retrieved attributes for such record to build the first and second disjoint results sets.
-
Citations
25 Claims
-
1. A method of performing a query of a database, the method comprising:
-
receiving a database query, the database query including first and second operations respectively configured to generate first and second disjoint results sets from a dataspace; analyzing the database query to identify a set of attributes from the dataspace that are used by at least one of the first and second operations in the database query; and during execution of the database query, iteratively processing a plurality of records from the dataspace in a single pass, including, for each of the plurality of records, processing such record by retrieving the plurality of attributes for such record from the dataspace and performing each of the first and second operations on the record using the retrieved attributes for such record to build the first and second disjoint results sets. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An apparatus comprising:
-
a processor; and program code configured to be executed by the processor for performing a query of a database, the program code configured to receive a database query, the database query including first and second operations respectively configured to generate first and second disjoint results sets from a dataspace, to analyze the database query to identify a set of attributes from the dataspace that are used by at least one of the first and second operations in the database query, and to iteratively process a plurality of records from the dataspace in a single pass during execution of the database query, including, for each of the plurality of records, processing such record by retrieving the plurality of attributes for such record from the dataspace and performing each of the first and second operations on the record using the retrieved attributes for such record to build the first and second disjoint results sets. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A program product, comprising:
-
a computer readable medium; and a program code configured for performing a query of a database, the program code resident on the computer readable medium and configured to receive a database query, the database query including first and second operations respectively configured to generate first and second disjoint results sets from a dataspace, to analyze the database query to identify a set of attributes from the dataspace that are used by at least one of the first and second operations in the database query, and to iteratively process a plurality of records from the dataspace in a single pass during execution of the database query, including, for each of the plurality of records, processing such record by retrieving the plurality of attributes for such record from the dataspace and performing each of the first and second operations on the record using the retrieved attributes for such record to build the first and second disjoint results sets. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
Specification