[
https://issues.apache.org/jira/browse/OPTIQ-349?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14074755#comment-14074755
]
Julian Hyde commented on OPTIQ-349:
-----------------------------------
Working on this in https://github.com/julianhyde/optiq/commits/optiq-349.
> 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)