Hbase与hive的区别

22 篇文章 0 订阅
7 篇文章 0 订阅

Hbase与hive的区别

总的而言:

  • Hive和Hbase是两种基于Hadoop的不同技术–Hive是一种类SQL 的引擎,并且运行MapReduce 任务,Hbase 是一种在Hadoop之上的NoSQL的Key/vale数据库。当然,这两种工具是可以同时使用的。就像用Google 来搜索,用FaceBook 进行社交一样,Hive 可以用来进行统计查询,HBase 可以用来进行实时查询,数据也可以从Hive 写到Hbase,设置再从Hbase 写回Hive。

对hive而言

  1. Hive是一个构建在Hadoop 基础之上的数据仓库。通过Hive可以使用HQL语言查询存放在HDFS 上的数据。

  2. HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hive提供了SQL查询功能,但是Hive 不能够进行交互查询,因为它只能够在Haoop上批量的执行Hadoop。

  3. Hive 被分区为表格,表格又被进一步分割为列簇。列簇必须使用schema 定义,列簇将某一类型列集合起来(列不要求schema定义)。

  4. Hive 目前不支持更新操作。

  5. 由于hive在hadoop上运行批量操作,它需要花费很长的时间,通常是几分钟到几个小时才可以获取到查询的结果。

  6. Hive 适合用来对一段时间内的数据进行分析查询,例如,用来计算趋势或者网站的日志。

  7. Hive 不应该用来进行实时的查询。因为它需要很长时间才可以返回结果。

对HBase而言

  1. HBase 查询是通过特定的语言来编写的,这种语言需要重新学习。类SQL 的功能可以通过Apache Phonenix 实现,但这是以必须提供schema 为代价的。另外,Hbase 也并不是兼容所有的ACID 特性,虽然它支持某些特性。最后但不是最重要的–为了运行Hbase,Zookeeper是必须的,zookeeper 是一个用来进行分布式协调的服务,这些服务包括配置服务,维护元信息和命名空间服务。

  2. Hbase非常适合用来进行大数据的实时查询。Facebook用Hbase 进行消息和实时的分析。它也可以用来统计Facebook的连接数。

  3. HBase 是一种Key/Value 系统,它运行在HDFS 之上。和Hive 不一样,Hbase 的能够在

  4. 它的数据库上实时运行,而不是运行MapReduce 任务。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值