我的问题非常简单,但是我阅读文档后仍然找不到清晰的答案。
我在一个 CDH 5.10 集群上运行 Spark2。 还有 Hive 和 metastore。
我通过以下方式在我的 Spark 程序中创建了一个会话:
SparkSession spark = SparkSession.builder().appName("MyApp").enableHiveSupport().getOrCreate()
假设我有以下的HiveQL查询:
spark.sql("SELECT someColumn FROM someTable")
我想知道:
- 这个查询是否在底层被翻译成了Hive MapReduce原语,还是
- HiveQL的支持仅限于语法层面,底层将使用Spark SQL。
我正在进行一些性能评估,不知道我是否应该声称使用 spark.sql([hiveQL query])
执行的查询时间性能是指Spark还是Hive。
spark.catalog.listTables()
而不是spark.catalog.listTables().show()
,因为对于列表对象,show()不存在。 - dim_userlistTables()
返回一个数据集,其中包含show
方法。 - Raphael Roth