它是以Google BigTable为原型,设计实现了高可靠、高扩展、实时读写的列存储数据库。它的本质实际上是有一张稀疏的大表,用来存储粗粒度的结构化数据,并HDFS且能够通过简单的增加节点来实现系统的线性扩展。
Hbase运行在分布式文件HDFS之上,利用它可以在廉价的PCserver上搭建大规模结构化存储集群。HBase的数据以表的形式进行组织,每个表由行列组成。HBase每个列属于一个特定的列族,通过行和列来确定一个存储单元,而每个存储单元又可以由多个版本,通过时间戳来标识。
HBase集群中通常包含两个角色,HMaster和HRegionServer。当表随着记录条数的增加而不断变大后,将会分成一个个Region,每个Region可以由(startkey,endkey)来表示,它含一个startKey和endkey的半闭区间。一个HRegionServer可以管理多个Region,并由HMaster来负责HRegionServer的调度及集群状态的监管。由于Region可分散并由不同的HRegionServer来管理,因此,理论上的表都可以通过集群来处理。