Hbase概述 (3)

顾名思义,就是内存存储,位于内存中,用来保存当前的数据操作,所以当数据保存在WAL中之后,RegsionServer会在内存中存储键值对。

* Region

Hbase表的分片,HBase表会根据RowKey值被切分成不同的region存储在RegionServer中,在一个RegionServer中可以有多个不同的region

3Zookeeper

HMasterHRegionServer 启动时会向ZooKeeper注册,存储所有HRegion的寻址入口,实时监控HRegionserver的上线和下线信息。并实时通知给HMaster,存储HBaseschematable元数据,默认情况下,HBase 管理ZooKeeper 实例,Zookeeper的引入使得HMaster不再是单点故障。一般情况下会启动两个HMaster,非ActiveHMaster会定期的和Active HMaster通信以获取其最新状态,从而保证它是实时更新的,因而如果启动了多个HMaster反而增加了Active HMaster的负担

九、使用场景的探讨 1、何时使用

* 如果数据有很多列,且包含很多空字段

* 数据包含了不定数量的列

* 需要维护数据的版本

* 需要很高的横向扩展性

* 需要大量的压缩数据

需要大量的I/O

一般而言数百万行的数据和频率不高的读写操作,是不需要HBase的,如果有几十亿列数据,同时在单位时间内有数以千、万记的读写操作,可以考虑HBase

2、何时不使用

数据总量不大时(比如就几个G

当需要JOIN以及关系型数据库的一些特性时

* 如果关系型数据库可以满足需求

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgjdds.html