设为首页 加入收藏

TOP

Hbase与Hive的区别
2018-11-13 15:29:37 】 浏览:27
Tags:Hbase Hive 区别
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012834750/article/details/80856249

一、HBase与Hive的对比

Hive和Hbase有各自不同的特征:hive是高延迟、结构化和面向分析的,hbase是低延迟、非结构化和面向编程的。Hive数据仓库在hadoop上是高延迟的。

其中HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。

通过hive的存储接口,hive和Hbase可以整合使用。

  • 1、hive是sql语言,通过数据库的方式来操作hdfs文件系统,为了简化编程,底层计算方式为mapreduce。

  • 2、hive是面向行存储的数据库。

  • 3、Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑。

  • 4、HBase为查询而生的,它通过组织起节点內所有机器的內存,提供一個超大的內存Hash表 。

  • 5、hbase不是关系型数据库,而是一个在hdfs上开发的面向列的分布式数据库,不支持sql。

  • 6、hbase是物理表,不是逻辑表,提供一个超大的内存hash表,搜索引擎通过它来存储索引,方便查询操作。

  • 7、hbase是列存储。

1) Hive
(1) 数据仓库

Hive的本质其实就相当于将HDFS中已经存储的文件在Mysql中做了一个双射关系,以方便使用HQL去管理查询。

(2) 用于数据分析、清洗

Hive适用于离线的数据分析和清洗,延迟较高。

(3) 基于HDFS、MapReduce

Hive存储的数据依旧在DataNode上,编写的HQL语句终将是转换为MapReduce代码执行。

2) HBase
(1) 数据库

是一种面向列存储的非关系型数据库。

(2) 用于存储结构化和非结构话的数据

适用于单表非关系型数据的存储,不适合做关联查询,类似JOIN等操作。

(3) 基于HDFS

数据持久化存储的体现形式是Hfile,存放于DataNode中,被ResionServer以region的形式进行管理。

(4) 延迟较低,接入在线业务使用

面对大量的企业数据,HBase可以直线单表大量数据的存储,同时提供了高效的数据访问速度。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇(13)HBase 1.2.6 集群部署 下一篇HBase HA 集群启动 报错 java.net..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目