2010YOUY01 commented on issue #16364: URL: https://github.com/apache/datafusion/issues/16364#issuecomment-2969378247
> > limiting the the intermediate result to ~1 batch size is enough to keep the performance. > > Do you mean we should also limit num_row of [`left_side, right_side`](https://github.com/apache/datafusion/blob/69dfe6c499d39563f4e6d9835fcdf3793f7d98c8/datafusion/physical-plan/src/joins/nested_loop_join.rs#L986) to 1 batch size ? By joining only one left row with the right batch at a time? > > This is the easiest way to implement. This is the only limitation we need apply > > I thought that increasing the size of the intermediate result for (left_side, right_side) might lead to better performance. ~But then I realized that if we truly want better performance, we should avoid using nlj~ We can implement it first then do some benchmarking. [@2010YOUY01](https://github.com/2010YOUY01) Adding micro-benches for NLJ sounds great, we can enumerate scenarios like small build side + large probe side + less selective join filter large build side + small probe side + selective join filter ... And later decide the what to implement according to bench results. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For additional commands, e-mail: github-h...@datafusion.apache.org