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