Julian Hyde created OPTIQ-349:
---------------------------------

             Summary: Add heuristic join-optimizer that can generate bushy joins
                 Key: OPTIQ-349
                 URL: https://issues.apache.org/jira/browse/OPTIQ-349
             Project: Optiq
          Issue Type: Bug
            Reporter: Julian Hyde
            Assignee: Julian Hyde


Add OptimizeBushyJoinRule, a heuristic join-optimizer that can generate bushy 
joins.

We already have LoptOptimizeJoinRule, which is capable of optimizing join order 
using heuristics, but it is not capable of generating bushy joins. We also have 
rules that can exhaustively generate all join-orderings (and OPTIQ-346 adds 
another rule) but this is impractical for N above about 7.

This is a different approach to OPTIQ-299. Like 299, after choosing a global 
order, we want to be able to apply regular Optiq rules to optimize further; but 
 rather than adding "firewall" relational expressions to partitioning the 
graph, as advocated by 299, we might change the Volcano engine to allow regular 
rules if they immediately generate a cheaper relational expression or if they 
generate a cheaper relational expression after a maximum of N steps or C 
worsening of cost.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to