Cartesian product detection
First Claim
Patent Images
1. A method for detecting Cartesian Products in query results, comprising:
- identifying, from a query against one or more databases, joins between different tables of the one or more databases; and
determining on the basis of cardinalities of the identified joins whether a Cartesian Product will occur in a query result corresponding to the query, without executing the query against the one or more databases.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system and article of manufacture for query processing and, more particularly, for determining that Cartesian Products will occur in query results without executing corresponding queries. One embodiment provides a method for detecting Cartesian Products in query results. The method comprises identifying, from a query against one or more databases, joins between different tables of the one or more databases. Without executing the query against the one or more databases, it is determined on the basis of cardinalities of the identified joins whether a Cartesian Product will occur in a query result corresponding to the query.
-
Citations
30 Claims
-
1. A method for detecting Cartesian Products in query results, comprising:
-
identifying, from a query against one or more databases, joins between different tables of the one or more databases; and
determining on the basis of cardinalities of the identified joins whether a Cartesian Product will occur in a query result corresponding to the query, without executing the query against the one or more databases. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method for detecting Cartesian Products in query results, comprising:
-
constructing, for a query, a join graph representing joins between a plurality of tables of one or more databases;
traversing the join graph from one table to another table for each of the plurality of tables; and
determining, on the basis of the traversing and without executing the query, whether a predetermined type of condition exists in the join graph which is capable of contributing to a resulting Cartesian Product in a query result corresponding to the query. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A computer-readable medium containing a program which, when executed by a processor, performs a process for detecting Cartesian Products in query results, the process comprising:
-
identifying, from a query against one or more databases, joins between different tables of the one or more databases; and
determining on the basis of cardinalities of the identified joins whether a Cartesian Product will occur in a query result corresponding to the query, without executing the query against the one or more databases. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A computer system comprising:
-
one or more databases; and
a query manager configured for;
identifying, from a query against the one or more databases, joins between different tables of the one or more databases; and
determining on the basis of cardinalities of the identified joins whether a Cartesian Product will occur in a query result corresponding to the query, without executing the query against the one or more databases.
-
Specification