scala 在spark中Boradcast加入太慢?

fnvucqvd  于 2023-05-17  发布在  Scala
关注(0)|答案(1)|浏览(101)

我有两张这样的table:
表A:ind,值1

(1,a)(2,B)(3,c)... 30亿行

表B:start_ind,end_ind,value2

(3,20,c)(78,99,y)(88,156,z)…5亿行

我用spark sql编写了这个查询

Select /*+ BROADCAST(B) */ A.ind,A.value1,B.value2
From A join B on A.ind between B.start_ind and B.end_ind;

我给予了5个执行器核心,700个执行器,50GB内存的执行器。
查询永不结束
我怎样才能提高性能?

tvmytwxo

tvmytwxo1#

Spark Broadcast joins不能用于连接两个大的DataFrame,这里就是这样。
我建议你关注Sim's propositions!这可能是有用的

相关问题