【问题标题】:Difference between Spark SQL Limit vs Hive SQL LimitSpark SQL 限制与 Hive SQL 限制之间的区别
【发布时间】:2020-12-09 00:17:09
【问题描述】:

在 Hive 中,如果我们调用 limit 子句,它将给出更快的响应。同样,如果我们在 Spark SQL 中运行,它会花费更多时间。能不能详细解释一下?

在蜂巢中

SELECT * FROM employee LIMIT 10;

在 Spark SQL 中,

spark.sql("SELECT * FROM employee LIMIT 10").show()

限制查询如何作用于分区表?

【问题讨论】:

  • 你能告诉我这两种情况下的文件格式是什么吗?
  • 文件格式是拼花
  • 您使用的是哪个 Hive 和 Spark 版本?在 hive 中运行相同查询时您使用的是哪个执行引擎?
  • 如果我们运行任何 spark/hive 版本,对于 select * from table limit 10,hive 将提供更好的性能,因为 hive 将直接从 hdfs 文件运行。
  • 我想要的是使用限制查询时 spark 和 hive 的内部工作。

标签: apache-spark hive apache-spark-sql


【解决方案1】:

因为 Spark SQL 不是从头开始开发的,所以他们采用了 Hive 并将其与 spark 集成。 现在,当您使用 Hive 运行查询时,它是 Hive 原生的,并且所有序列化和反序列化库仅用于 Hive,但在火花的情况下,它将使用有一些开销的 Java serd。

【讨论】:

    猜你喜欢
    • 2017-07-19
    • 1970-01-01
    • 2020-09-18
    • 2018-05-13
    • 2018-11-07
    • 1970-01-01
    • 2018-04-04
    • 2016-12-13
    • 1970-01-01
    相关资源
    最近更新 更多