viirya commented on PR #8991:
URL: 
https://github.com/apache/arrow-datafusion/pull/8991#issuecomment-1915390225

   > While doing so, I wonder if comet could use a custom PhysicalOptimzer pass 
to add a ProjectionExec 🤔
   
   As I mentioned in the description, adding an additional Projection under 
Join (e.g., SortMergeJoin) doesn't make a lot sense for Spark due to its 
distribution nature. An additional Projection means we materialize extra 
columns (the join key expressions) earlier and which could lead to additional 
data in shuffle/sort.
   
   So what this does is to relax join key constraints in DataFusion, for 
example now physical SortMergeJoin can take expressions other than Column as 
join keys. In Spark/Comet side, now we can translate Spark SortMergeJoin 
directly to DataFusion SortMergeJoin. We don't need to change Spark physical 
query structure.
   
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to