Apache Spark - 使用SQL的最快方法?

时间:2016-07-11 08:36:13

标签: apache-spark apache-spark-sql

据我所知,Spark可以使用两种不同语法的SQL。

第一个是使用.sql()函数,例如:

DataFrame df = sqlContext.read().parquet("../loc/of/this");  
df.registerTempTable("this")
DataFrame people = sqlContext.sql("SELECT * FROM this GROUP BY that")

另一个是:

DataFrame people = sqlContext.read.parquet("../loc/of/this")
people.groupBy("that")

两者有什么区别?是否有性能影响? 谢谢!

1 个答案:

答案 0 :(得分:1)

根据我的经验,这两种方式具有相同的性能,可能是第一种,spark引擎必须解析或分析SQL查询字符串,但我认为减少火花作业不是问题