《HBase作为一个NoSQL数据库,有哪些架构上的特点?(下)》
(1)强一致读写
他不是zk那种最终一致性,是强一致的,你写成功了立马就可以读。这个功能是极为实用的,他是依靠的分布式存储才做到的,zk那种是属于主从同步,你读follower机器是可能读到不一致数据的
(2)高可用
每台机器上部署一个RegionServer,管理一大堆的region数据分片,RegionServer都是支持高可用的,一个RegionServer挂掉不会导致数据丢失,他自动可以由别的机器接管他的工作运行下去
(3)支持mapreduce/spark这种分布式计算引擎
对hbase里的数据进行分布式计算,可以从hbase里分布式抽数据去计算,也可以把计算后的结果写入hbase分布式存储
(4)Java API/thrift API/REST API的支持
当然支持Java API了,咱们的Java业务系统经常会有海量数据NoSQL存储的需求,此时就可以基于Java API来操作hbase里的数据了
(5)支持协处理器,块缓存和布隆过滤器,可以用于优化查询性能
(6)hbase现在最新版本都是支持web界面的方式来对hbase集群进行运维管理的