HBase特点
HBase作为一款NoSQL数据库,由于CAP原则的存在以及本身实现的特点,并不能解决所有问题。下面先说一下HBase的特点:
高并发高吞吐量
- HBase底层使用LSM tree来作为数据处理模型,所以数据直接写入内存,写吞吐量得到保证。而读数据优先从内存中读取,这样可以覆盖大量的热数据,能满足大部分的热数据查询场景;冷数据在磁盘上是按照字典序排列,如果数据存储以及数据查询设计的合理,则大部分场景下的查询会转化为单rowkey的get以及磁盘上顺序数据的读取,吞吐量同样可以得到保障
- HBase的读写入口是zookeeper,从zookeeper中可以直接拿到数据实际存储的位置,如果数据存储设计的合理,则数据读写会分散到各个服务器上,压力负载均衡,加上数据的顺序存储,可以达到很高的并发量
易扩展
HBase能很容易的横向扩展节点,HBase的易扩展体现在存储(HDFS)和计算(RegionServer)两个方面。
-
HBase底层存储依赖HDFS,HDFS的易扩展特性就解决了HBase在存储上易扩展的特性
-
在集群中添加一个节点启动服务后,会在该服务器上增加一个HRegionServer服务,用来管理该节点上HBase数据读写以及管理相关的任务。master节点会周期的检测集群状态,发现新上线的节点后,会触发balance操作,将数据迁移到新节点上,使整个集群的服务器负载相对均衡;除此之外基本上不需要其他操作,对整个集群的压力和影响很小(相对于类似redis集群的一致性hash等节点数量敏感的算法)

最低0.47元/天 解锁文章
3213





