Spark不是替代品

时间:2017-03-07 07:28:14

标签: scala join apache-spark

我的数据框A的列id中有一个ID,此列中的条目是数据框B中的ID的超集。

我想在数据框idA中获得B的补充。换句话说:来自A的所有ID都不在B

Spark可以使用过滤器执行此操作:

A.filter(not('id.isin(B.select('id)))

但是,由于isin需要varags,因此无法正常工作。现在我可以这样做:

A.filter(not('id.isin(B.select('id)).distinct.collect.map(r => r(0)): _*)

但是当使用数百万个ID时,这是非常沉重的,因为spark无法分配此计算。有没有办法在不使用isin的情况下实现这种补充?也许加入?

0 个答案:

没有答案