×

Dynamic filters for relational query processing

  • US 8,086,593 B2
  • Filed: 03/01/2007
  • Issued: 12/27/2011
  • Est. Priority Date: 03/01/2007
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented system comprising:

  • a processor; and

    a memory component communicatively coupled to the processor, the memory component having stored therein computer-executable instructions configured to implement the system including;

    an operator tree including at least one join configured to interact with a first table and a second table referenced by a query, wherein the operator tree is configured to receive first data from the first table via a first segment of the operator tree, and wherein the operator tree is configured to receive second data from the second table via a second segment of the operator tree;

    a dynamic filter component configured to;

    automatically generate a plurality of dynamic filters independent of an explicit external input, wherein the dynamic filter component is configured to generate the plurality of dynamic filters during execution of the query while the first data from the first table is received via the first segment of the operator tree, and wherein the dynamic filter component is configured to derive the plurality of dynamic filters via predicates that are formed through an analysis of the query; and

    apply the plurality of dynamic filters at an initial position of the second segment of the operator tree according to an order based on a corresponding selectivity of each dynamic filter to eliminate a set of non-qualifying data from the second data prior to performing the at least one join, and wherein the dynamic filter component is configured to calculate the corresponding selectivity by dividing a number of rows passing through a corresponding dynamic filter by a number of rows being processed; and

    an evaluation component configured to evaluate a performance order of the dynamic filter component, wherein the evaluation component is further configured to reorder the plurality of dynamic filters according to a corresponding quotient value, and wherein the corresponding quotient value is the number of rows passing through the corresponding dynamic filter divided by the number of rows being processed.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×