我在与其他用户共享的集群上使用 Spark。因此,仅根据运行时间来判断我的哪个代码运行效率更高是不可靠的。因为当我运行更高效的代码时,其他人可能会运行大量数据并使我的代码执行更长时间。
所以我可以在这里问两个问题:
我正在使用
join
函数加入 2RDDs
并且在使用groupByKey()
之前尝试使用join
,如下所示:rdd1.groupByKey().join(rdd2)
似乎花了更长的时间,但是我记得当我使用 Hadoop Hive 时,group by 使我的查询运行得更快。由于 Spark 使用延迟评估,我想知道
groupByKey
before是否join
让事情变得更快注意到Spark有一个SQL模块,到现在还真没时间去尝试,请问SQL模块和RDD SQL之类的函数有什么区别?