【问题标题】:Why use general mapreduce than hive?为什么使用一般的mapreduce而不是hive?
【发布时间】:2015-03-03 06:53:04
【问题描述】:

Hive 是一种创建 mapreduce 作业(如 SQL 查询)的更简单的方法。所以,我想问一下,在相同的数据下,hive 是否比一般的 mapreduce 更快?如果 hive 更快,为什么我们仍然使用一般的 mapreduce?

谢谢大家

【问题讨论】:

  • 既然有Spark,在我看来,一般的mapreduce是贬义的

标签: performance hadoop mapreduce hive hql


【解决方案1】:

首先,Hive 在后台使用 map reduce 来处理任何查询。因此,无论您通过 hive 做什么,都可以通过编写 map reduce 作业来实现。 但 Hive 会使用优化的 map reduce 执行计划。

话虽如此,选择 hive 而不是 map reduce 的非常重要的原因是简单。不需要知道如何编写 map reduce 作业来完成某件事。只有 SQL 语句可以。

也就是说,如果您使用 hive,您将受到 hive 可以支持的某些规则的约束。但是 map reduce 作业将非常灵活,您可以编写一个 map reduce 作业,以任何您想使用数据的方式进行操作。

【讨论】:

    【解决方案2】:

    我们可以在 HIVE 中进行简单的查询,而不是编写整个 map-reduce 代码 当我们使用 hive 进行处理时,Hive 查询被转换为 map-reduce 程序,然后该程序将在 HDFS 上执行.......

    如果您擅长编程,那么您可以使用自己的 Map-reduce 代码进行相同的查询。如果您的 map-reduce 代码比 Hive (map-reduce) 代码更优化,那么您将在更短的时间内获得结果..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-28
      • 2015-07-23
      • 1970-01-01
      • 2019-04-13
      • 1970-01-01
      • 2012-03-29
      • 1970-01-01
      相关资源
      最近更新 更多