cloud-fan commented on code in PR #42194:
URL: https://github.com/apache/spark/pull/42194#discussion_r1305073226


##########
sql/catalyst/src/main/scala/org/apache/spark/sql/internal/SQLConf.scala:
##########
@@ -1500,6 +1500,16 @@ object SQLConf {
       .booleanConf
       .createWithDefault(false)
 
+ val V2_BUCKETING_SHUFFLE_ENABLED =
+    buildConf("spark.sql.sources.v2.bucketing.shuffle.enabled")
+      .doc("During a storage-partitioned join, whether to allow to shuffle 
only one side." +
+        "When only one side is KeyGroupedPartitioning, if the conditions are 
met, spark will " +
+        "only shuffle the other side. This optimization will reduce the amount 
of data that " +

Review Comment:
   shall we make the algorithm smarter? If the other side is large, doing a 
`KeyGroupedPartitioning` may lead to skew and it's still better to shuffle both 
sides with hash partitioning.
   
   Let's think of an extreme case: one side reports `KeyGroupedPartitioning` 
with only one partition, with this optimization, we end up with doing the join 
using a single thread.



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to