码迷,mamicode.com
首页 > 其他好文 > 详细

HBase相关问题

时间:2015-09-11 14:10:21      阅读:207      评论:0      收藏:0      [点我收藏+]

标签:

HBase和Hive的异同之处?

共同点:

  1). HBase与Hive都是架构在Hadoop之上的,都是用HDFS作为底层存储

区别:

  2). Hive是建立在Hadoop之上为了减少MapReduce jobs编写工作的批处理系统,HBase是为了支持弥补Hadoop对实时操作的缺陷的项目 。

  3). Hive的表是逻辑表,它本身不存储和计算数据,它完全依赖于HDFS和MapReduce,高延迟的特点。

  4). HBase的表物理表,hdfs作为底层存储,而HBase负责组织文件。 提供一个超大的内存hash表,搜索引擎通过它来存储索引,方便查询操作。

HBase和RDBMS的异同之处?

  1.数据类型:HBase只有简单的字符类型,所有的类型都是交由用户自己处理,它只保存字符串。而RDBMS有丰富的类型和存储方式。
  2.数据操作:HBase只有很简单的插入、查询、删除、清空等操作,表和表之间是分离的,没有复杂的表和表之间的关系。而RDBMS通常有各式各样的函数和连接操作。 
  3.存储模式:HBase是基于列存储的,每个列族都由几个文件保存,不同列族的文件是分离的。而RDBMS是基于表格结构和行模式保存的 。
  4.数据维护:HBase的更新操作不应该叫更新,它实际上是追加新的数据。而RDBMS是替换修改。
  5.可伸缩性:Hbase这类分布式数据库就是为了这个目的而开发出来的,所以它能够轻松增加或减少硬件的数量,并且对错误的兼容性比较高。而RDBMS通常需要增加中间层才能实现类似的功能。

Hbase的优缺点
  1. HBase列可以动态增加,并且列为空就不存储数据,节省存储空间。
  2. Hbase自动切分数据,使得数据存储自动具有水平scalability。
  3. Hbase可以提供高并发读写操作的支持。
缺点:
  1. 不能支持条件查询,只支持按照Row key来查询.
  2. 暂时不能支持Master server的故障切换,当Master宕机后,整个存储系统就会挂掉.

什么时候选择HBase

  1).超大数据量

  2).记录非常稀疏

  3).多版本数据

  4).对于数据结构中字段不够确定或杂乱无章,很难按一个概念去进行抽取的数据适合用HBase。

HBase相关问题

标签:

原文地址:http://www.cnblogs.com/skyl/p/4800634.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!