hbase的数据模型

hbase类似bigTable是一个分布式的数据库,它是一个稀疏的长期存储的多维的排序的映射表,这张表的索引是行关键字,列关键字,时间戳。hbase中的数据都是字符串,没有类型。

 
      hbase表格中的数据,每行都有一个可排序的主键和任意多的列,由于是稀疏存储,所以每一行中的列都可以截然不同
    列名字的格式是<fmaily:quailfier>,都是字符串组成的。每一张表都有一个列族的集合,这个集合是固定不变的,只有通过表结构来改变;但是quailfier值对每一行都是可变的
    hbase把同一个列族的数据存储在同一个目录下,hbase的写操作时锁行的,每一行都是一个原子元素,都可以加锁
    hbase数据库的所有更新都有一个时间戳,每一个时间戳就是一个新的版本。hbase会保留一定数量的版本(自定义的),客户端可以获取指定版本单元的值,离当前时间最近版本单元的值,或者全部版本单元的值
    hbase是稀疏存储,所以某些列可以空,为空的数据在文件中是不存储的,获取的时候会返会null,
      hbase在物理上是按照列来存储,如果在查询的时候没有没有指定时间戳,默认会查询里当前时间最近的那个版本。数据在存储的时候会按照时间来排序
 
hbase的概念视图

hbase的物理视图
原文地址:https://www.cnblogs.com/zhangXingSheng/p/6277485.html