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)