【问题标题】:Purpose of using HBase in Hadoop instead of Hive [duplicate]在 Hadoop 中使用 HBase 而不是 Hive [重复]
【发布时间】:2016-12-29 11:09:58
【问题描述】:

在我的项目中,我们使用Hadoop 2SparkScalaScala 是编程语言,Spark 在这里用于分析。我们同时使用HiveHBase。我可以使用Hive 访问HDFS 的所有详细信息,例如文件等。 但我的困惑是 -

  1. 当我可以使用Hive 执行所有作业时,为什么需要HBase 来存储数据。这不是开销吗?
  2. HIVEHBase的功能是什么?
  3. 如果我们只使用 Hive,那应该是什么问题?

谁能告诉我。

【问题讨论】:

    标签: hadoop hive hbase hdfs


    【解决方案1】:
    1. 当我能够使用Hive 执行所有作业时,为什么需要HBASE 来存储数据。这不是开销吗?
    2. HiveHbase的功能是什么

    HBase 是 No Sql 数据库,将数据存储在键值对中。 Hive 已与 Hbase.Hbase HIve Integration 集成

    优势:- Hive 查询超过 HBase。想想连接和一种对Hbase 数据进行聚合和简单操作的简单方法。 Hbase 为您提供可扩展的存储基础架构,可让数据保持在线。 StumbleUpon 将Hbase 用于他们的实时网站。 Hive 不是实时查询引擎,因此它的数据存储不能用于类似目的。 Hive 优于 HBase 为您带来两全其美的好处。

    1. 如果我们只使用 Hive,那应该是什么问题?

    如果我们使用Hive 没有问题。但是在项目中,我们必须考虑很多场景。

    • 性能
    • 存储
    • 所用技术的稳定性
    • 兼容性(Hadoop 中的大多数工具都可以轻松访问 Hive 仓库)

    【讨论】:

      【解决方案2】:

      当我能够使用 Hive 执行所有工作时,为什么 HBase 是 需要存储数据。这不是开销吗?

      我不能说它是否是开销。但 HBase 会实时响应请求,因为它的数据库在 Hive 上运行 MapReduce/Spark/Tez 引擎上的作业。

      Hive 和 HBase 的功能是什么?

      蜂巢:

      这是一种类似 SQL 的语言,可以翻译成 MapReduce/Spark/Tez 作业。它只在 Hadoop 上运行批处理。 更多信息请查看how Hive queries run on MapReduce engine

      HBase:

      它是运行在 HDFS/S3(在 AWS 上)之上的键/值存储数据库。它对请求进行实时操作。

      如果我们只使用 Hive,那应该是什么问题?

      如前所述,如果查询需要实时处理,那么 HBase 是 Hive 的选择。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-12-04
        • 1970-01-01
        • 2015-09-28
        • 1970-01-01
        • 2012-11-01
        • 1970-01-01
        • 2015-03-05
        • 1970-01-01
        相关资源
        最近更新 更多