hbase hive区别(hbase和hive的差别是什么,各自适用在什么场景中)
本文目录
hbase和hive的差别是什么,各自适用在什么场景中
Hive和Hbase是两种基于Hadoop的不同技术--Hive是一种类**L的引擎,并且运行MapReduce任务,Hbase是一种在Hadoop之上的No**L 的Key/vale数据库。当然,这两种工具是可以同时使用的。就像用Google来搜索,用FaceBook进行社交一样,Hive可以用来进行统计查询,HBase可以用来进行实时查询,数据也可以从Hive写到Hbase,设置再从Hbase写回Hive
共同点:
1.hbase与hive都是架构在hadoop之上的。都是用hadoop作为底层存储
区别:
1.Hive是建立在Hadoop之上为了减少MapReduce jobs编写工作的批处理系统,HBase是为了支持弥补Hadoop对实时操作的**的项目 。
2.想象你在操作RMDB数据库,如果是全表扫描,就用Hive+Hadoop,如果是索引访问,就用HBase+Hadoop 。
3.Hive query就是MapReduce jobs可以从5分钟到数小时不止,HBase是非常高效的,肯定比Hive高效的多。
4.Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑,就只是表的定义等,即表的元数据。这样就可以将结构化的数据文件映射为一张数据库表,并提供完整的**L查询功能,并将**L语句最终转换为MapReduce任务进行运行。
5.hive借用hadoop的MapReduce来完成一些hive中的命令的执行
6.hbase是物理表,不是逻辑表,提供一个超大的内存hash表,搜索引擎通过它来存储索引,方便查询操作。
7.hbase是列存储。
8.hdfs作为底层存储,hdfs是存放文件的系统,而Hbase负责组织文件。
9.hive需要用到hdfs存储文件,需要用到MapReduce计算框架。
Hadoop 用Hive还是HBase
这个要根据自己处理数据的方式来选择。
1、Hive是支持**L语句的,执行会调用mapreduce,所以延迟比较高;
2、HBase是面向列的分布式数据库,使用集群环境的内存做处理,效率会比hive要高,但是不支持sql语句。
Hadoop开发和运行处理大规模数据,需要用hbase做数据库,但由于hbase没有类sql查询方式,所以操作和计算数据非常不方便,于是整合hive,让hive支撑在hbase数据库层面的 hql查询,hive也即做数据仓库。
hive,impala,kfk,hbase,mitaka的关系是怎样的
hbase在三者中更注重的是存储,它实现了类似mysql的double write机制,但是它是一种No**L的数据库,并且是可以支持列式存储的,算是比较大的一个内存Hash表。hbase也采用了类似mysql中的mvcc的思想通过时间戳来做版本控制。
hbase是在hdfs基础之上的,可以算是数据的一种组织方式,是一种基于hadoop的分布式数据库系统。从数据库的角度来说,与mysql处在同一个层次,都是基于文件系统之上的管理数据的一种方法。
hbase作为面向列的数据库,支持按列读取和行读取,并解决了关系型数据库的分表的一些需求,如:关系型数据库中有些表的列重复数据太多了,需要重新建表来存重复列的数据,减少表的大小。
hive和impala则更偏向于查询分析,impala需要依赖hive的元数据,它们都有自己的查询分析引擎,只是impala是纯查询分析引擎。
hive 本身并不执行任务的分析过程,而是推给了mapreduce,这点与impala大不同,hive本身提供了数据的格式化输出功能,但是hive转换的mr可能不是最高效的,调优方式有限,很多复杂的算法没有办法表达,毕竟sql的语义表达能力有限。
hive与impala在查询分析这部分,hive明显的支持程度要比impala高,提供了很多内部函数,并且支持UDAF,UDF的方式
从数据库特性角度来看,hive与hbase的对比,hive不能修改数据,只能追加的方式,hbase允许增加和删除数据,hive不支持索引,impala和hive都是没有存储引擎的,hbase算是有自己的存储引擎。
在使用层面上来看,hive在使用上更像数据库,它提供非常丰富的系统函数,各种数据的操作,hbase在这方面就不太像一般的关系型数据库,它还是一个key-val的No**L,这方面的操作支持很有限,impala在这方面也是比较弱。
在计算模型层面上来看,hive是通过MR来计算的,这是一个偏向挪动数据到mr的计算节点来计算的模型,而impala则更多的是移动计算需求到DN上来做,数据不用动,最后变成了本地的磁盘IO。
更多文章:
transition四个属性顺序(css3 transition里的属性有先后顺序吗)
2026年4月13日 19:40
sql server怎么安装(怎样安装sql server 2008 r2)
2026年4月13日 18:40
hbase hive区别(hbase和hive的差别是什么,各自适用在什么场景中)
2026年4月13日 18:20
织梦安装教程上一品资源(利用APMServ在本地安装织梦dedecms系统图文教程)
2026年4月13日 18:00
腾讯小程序商城模板(做一个微信小程序商城开发大概多少钱(多少费用))
2026年4月13日 17:20
ppapi和activex(是不是Flash中的ActiveX比NPAPI和PPAPI要好)
2026年4月13日 17:00





