优化spark sql连接

时间:2017-11-20 07:18:03

标签: apache-spark apache-spark-sql spark-dataframe

我需要在Spark Sql作业中执行多个连接。我有三个数据源,分别称它们为a,b,c。它们中的每一个都以明文CSV从S3中读取。

'a'和'b'是大表,分别有大约90米和50米的记录。表'c'很小,只有大约20k的记录。

我正在执行的操作是

(a left join b where <filter something from a> group by <a.1,a.2,a.3,a.4>) 
left join c

最终操作有大约620k的记录,应该与'a'中的过滤和分组记录的数量相同(上面的'where'和'group by'子句大大减少了来自table的数据量' A')。

在我相当强大的集群上,此操作目前大约需要17分钟。我想知道是否可以通过优化来减少这种情况。请指教。

最好的问候

0 个答案:

没有答案