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

对HBase的一些个人看法

时间:2015-03-07 18:44:06      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

HBase是Google Big Table的一个开源实现,关于其基础和架构网上很多,这里就不一一说明,转一篇,这里主要谈谈我个人对Hbase的看法


1、查询:都知道HBase查询快,因为其实基于内存查询,Hbase在写入的时候,优先写入MemStore,这个MemStore就是内存了,查询的时候也就是从内存中返回,所以从这个方面Hbase可以理解为一个分布式缓存,跟平时的缓存没有差别,最简单的WEB系统在使用缓存时,也是在插入的时候先写入内存,在持久化到数据库。查询也是先从内存获取,获取失败再从数据库查询。

2、数据结构:Hbase是列存储,为什么要列存储,其实很简单,传统数据库,如果一个表有20个字段,查询某个字段时,也扫描了该行的全部数据,而列存储的好处是,查询哪些字段,就扫描对应的列表即可,这种在数据量较小下可能看不出什么优势,但是在大数据下,优势还是很明显的

3、关于Region,Region在数据量达到一定阀值后,会split为两个Region,其实这种思想跟数据库按照数据量建表原理一样,为了保证高效查询,在数据量达到一定阀值之后,建立新的表。

因此,个人认为,Hbase的核心就是缓存+列存储+拆表。其余特性其实是分布式系统的特性,例如HMaster的HA,这种在中心化分布式系统中也是很成熟的解决方案,数据的多版本也是分布式系统副本的特性,仅此而已。


对HBase的一些个人看法

标签:

原文地址:http://blog.csdn.net/yangfei001/article/details/44117881

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