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]

Reply via email to