Patent ID: 7840592
Filing Date: 2010-11-23
Classification: G06F,Y10S

Abstract:
1. A method comprising: receiving a recursive query from a query optimizer, wherein the recursive query comprises a recursive predicate associated with a recursive column in a table; estimating a number of rows that the recursive query will retrieve, wherein the estimating further comprises recursively probing an index associated with the table, wherein the recursive predicate comprises a comparison of a first column and a second column, wherein the estimating further comprises determining that the recursive column of the index is associated with the first column of the recursive predicate and a non-recursive column of the index is associated with the second column of the recursive predicate, and wherein the estimating further comprises calculating the number of rows that the recursive query will retrieve based on a maximum depth of the recursive probing, a cardinality of a leading column of the index, a cardinality of a secondary column of the index, a number of rows in the table, and a cardinality of the leading column of the index and the secondary column of the index taken together; and returning the number of rows to the query optimizer, wherein the query optimizer uses the estimated number of rows to choose a query access plan from among a plurality of query access plans stored in a storage device.