HBase是一个分布式的、面向列的开源数据库存储系统,具有高可靠性、高性能和可伸缩性,它可以处理分布在数千台通用服务器上的PB级的海量数据。
BigTable的底层是通过GFS来存储数据,而HBase对应的则是通过HDFS(Hadoop分布式文件系统)来存储数据的。
HBase不同于一般的关系型数据库,它是一个适合于非结构化数据存储的数据库。HBase不限制存储的数据的种类,允许动态的、灵活的数据模型。
HBase可以在一个服务器集群上运行,并且能够根据业务进行横向扩展。
HBase基本概念
Rowkey(行键):用来标识表中唯一的一行数据,以字节数组形式存储,类似关系型数据库中表的主键。rowkey在HBase中是严格按照字典序排序的。
Region:Region相当于一个数据的分片。每一个Region都有起始rowkey和结束rowkey,这表示了Region存储的row范围。
一个RegionServer包含多个Region,一个表的一段键值在一个RegionServer上会产生一个Region。在一个RegionServer中有一个或多个Region。
R