HBase时建立在HDFS之上,提供高可靠性、高性能、列存储、可伸缩、实时读写是NoSql数据库系统。
适合场景:单表超千万、上亿,且高并发。
不适合场景:主要需是数据分析,比如做报表。数据规模不大,对实时性要求高。
优点:
- HDFS有高容错性、高拓展性的特点,HBase基于HDFS实现的数据存储,因此HBase拥有超强的拓展性和吞吐量。
- HBase才赢K-V结构存储,因此即使面临海量数据的增长,也不会导致查询性能下降
- HBase是列式数据库,相对于传统的行式数据库,当单张表的字段很多的时候,可以将相同的列(以region为单位)存在不同的服务实例上,分散负载压力。
缺点:
1.架构设计复杂,且使用HDFS作为分布式存储,因此就存储少量数据,也不会很快
2. HBase不支持表的关联操作,因此数据分析是HBase的弱项。常见的group by或order by只能通过编写MapReduce来实现。
3.HBase部分支持ACID(行级事务)。