HBase最开始是受Google的BigTable启发而开发的分布式、多版本、面向列的开源NoSQL数据库。其主要特点是支持上亿行、百万列、支持强一致性、并且具有高扩展、高可用的特点。
既然HBase是一种分布式的数据库,那么和传统的RMDB有什么区别呢?
先来看看HBase表组成元素:
- RowKey:表中每条记录的主键
- Column Family:列族,将表进行横向切割,后面简称CF
- Column:属于某一个列族,可动态添加列
- Version Number:类型为Long,默认值是系统时间戳,可由用户自定义
- Value:保存的值
一行(Row)数据是可以包含一个或多个Column Family,但是我们并不推荐一张HBase表的Column Family超过三个。Column是属于Column Family的,一个Column Family包含一个或者多个Column。
在物理层面,所有的数据其实是存放在Region里边的,而Region又由RegionServer管理,关系如下:
- Region:一段数据的集合
- RegionServer:用于存放Region的服务
从上图可以看出,一个RegionServer管理多个Region,而一个Region管理一个或多个Column Family。
参考出处微信公众号:过往记忆大数据
你的鼓励是我分享技术最大的动力!如有错误之处,请指正,不胜感激。