Spark SQL广播以进行多次连接

时间:2019-03-18 09:03:15

标签: apache-spark apache-spark-sql

我知道如何广播2个表,例如:

SELECT  /*+ MAPJOIN(Table1) */ COLUMN 
FROM Table1 JOIN Table2 
ON Table1.key = Table2.key

但是有一种方法可以使用广播连接3个表吗?

SELECT  /* ? */ COLUMN 
FROM Table1 JOIN Table2 ON ...
            JOIN Table3 ON ...

1 个答案:

答案 0 :(得分:0)

通常情况下,小型表将根据配置spark.sql.autoBroadcastJoinThreshold自动广播。

将选择广播加入算法。

spark.sql.autoBroadcastJoinThreshold的默认值为10 MB(即10L * 1024 * 1024),Spark将检查要使用的联接(请参阅JoinSelection执行计划策略)。