调用sql()和使用Spark API调用()之间的区别

时间:2017-09-21 03:58:35

标签: scala apache-spark hive scala-collections

我是Spark / Scala / Hive的新手。我只是想知道调用

之间是否有任何区别
spark = new SparkSession(...).getHiveContext()
spark.sql("SELECR * FROM table")

spark = new SparkSession(...).getHiveContext() // not using
spark.read.table(table).select(from("*"))

...

特别是,是否有任何性能差异。

1 个答案:

答案 0 :(得分:1)

这两个片段具有相同的运行时性能。

第二个API更安全,如果您输入错误或尝试使用某些不受支持的操作,它将为您提供快速而明确的编译错误。你写SELECR而不是SELECT这很有趣,这很好地说明了这一点:)