GitHub user wangxiaoying closed a discussion: Join reordering
I'm curious about the join reordering implementation inside datafusion. After a quick search of the code, I found that there are two rules that may reorder the join: * `EliminateCrossJoin`: it completely reorders the joins from scratch in a way such that the join conditions can all be pushed down into the join node (preventing cross join). * `JoinSelection`: it reorders the given join input according to statistics in terms of deciding the build and probe side. Please let me know if I missed anything here, but it seems like there is no traditional join reordering in query optimization literature such as using DP or MEMO to decide the best join order in terms of performance. I found a related [issue](https://github.com/apache/arrow-datafusion/issues/1972) here in general for the optimizer framework but it also seems to be paused for a while. Are there any ongoing plans or discussions to implement such things? GitHub link: https://github.com/apache/datafusion/discussions/10068 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
