在Hadoop中使用HBase而不是Hive的目的

Avi*_*jit 4 hadoop hbase hive hdfs

在我的项目中,我们使用Hadoop 2,Spark,Scala.Scala是编程语言,Spark在这里用于分析.我们使用HiveHBase两者.我可以访问所有细节,如文件等HDFS使用Hive.但我的困惑是 -

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

任何人都可以让我知道.

mrs*_*vas 5

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

我不能说这是开销与否.但是,当Hive在MapReduce/Spark/Tez引擎上运行作业时,HBase会实时响应请求作为其数据库.

Hive和HBase有哪些功能?

蜂巢:

它是一种类似SQL的语言,可以转换为MapReduce/Spark/Tez作业.它只在Hadoop上运行批处理.有关更多信息,请查看Hive查询如何在MapReduce引擎上运行

HBase的:

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

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

正如所讨论的那样如果查询需要实时处理,那么HBase就是Hive的选择.


Ind*_*ain 5

  1. 当我能够使用时执行所有作业Hive,那么为什么HBASE需要存储数据.这不是开销吗?
  2. 什么是功能性HiveHbase

HBase是没有Sql数据库,它将数据存储在键值对中.Hive与...融为一体Hbase.Hbase HIve集成

优势: - Hive查询结束HBase.思考联接和一种简单的方法来对Hbase数据进行聚合和简单操作. Hbase为您提供可扩展的存储基础架构,使数据保持在线 StumbleUpon Hbase用于他们的实时网站.Hive不是实时查询引擎,因此其数据存储不能用于类似目的.Hiveover HBase为您提供两个世界的好处.

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

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

  • 性能
  • 存储
  • 使用技术的稳定性
  • 兼容性(Hado仓库很容易访问Hadoop中的大多数工具)