避免使用sparkSQL中的cartesian join

时间:2016-08-30 06:14:34

标签: scala apache-spark apache-spark-sql datastax-enterprise

Dataframe A(数百万条记录)其中一列是create_date,modified_date

Dataframe B 500记录有start_date和end_date

目前的做法:

Select a.*,b.* from a join b on a.create_date between start_date and end_date

以上查询在sparkSQL中执行笛卡尔积加入,需要永远完成。 我可以通过其他方式实现相同的功能。 我尝试播放较小的RDD

编辑:

spark version 1.4.1
No. of executors 2
Memmory/executor 5g
No. of cores 5

1 个答案:

答案 0 :(得分:0)

你无法避免笛卡尔产品作为spark sql donot支持非equi links