我最后一次使用spark时它还是V1.4.现在我使用的是3.2,我非常渴望学习Spark中不同类型的连接的性能。我似乎不能运行一个 Shuffle 散列加入pyspark。
我运行以下代码来禁用shuffle sort join:
spark.conf.set("spark.sql.join.preferSortMergeJoin", "false")
运行我的join语句:
df = small_table.join(big_table, small_table['id']==big_table['id'])
当我运行
df.explain()
它继续说SortMergeJoin作为计划。如果我使用广播哈希连接,它确实会更改为广播。如何启用shuffle hash join?
1条答案
按热度按时间9jyewag01#
你可以显式地传递join hint,如下所示: