HBase是一个分布式的、面向列的开源数据库。它是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。
HBase就是一款基于列的、可以高效地查询海量数据的非关系型数据库。
2.HBase架构RegionServer:读写HDFS中的数据,管理表中的数据。因为我们HBase最后的数据是落地在HDFS文件系统中的。存放和管理本地的Region。
Master:管理、监控RegionServer,实现负载均衡。对表的增删改,列族(column family的增删改等)。
Zookeeper:存放HBase集群的元数据以及集群的状态信息。
Region:当我们一张表中,数据比较多的时候,它会对数据进行一个分区Region-1、Region-2 ....,每个Region分别管理一部分数据。
3.与MySQL等关系型数据对比列动态增加:HBase只需在设计表的时候指定列蔟,可以动态地在列蔟中增加列。MySQL则在一开始设计数据表的时候,就要把所有的列都设计好。
数据自动划分:HBase数据可以自动分区(Region)。MySQL当数据太多的话,我们需要人工进行分区分表分库等操作。
高并发读写:HBase的高并发读写能力是很多数据库都比不了的,百万条数据,查询时间可以在百毫秒之内。
不能复杂查询:HBase不支持条件查询或复杂查询的,只支持RowKey的匹配查询。MySQL等关系型数据库可以进行复杂查询。
【转载】https://blog.csdn.net/Kenan_07/article/details/81905025
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |