大数据技术之HBase原理与实战归纳分享-上( 二 )


物理存储结构物理存储结构即为数据映射关系,而在概念视图的空单元格,底层实际根本不储存 。

大数据技术之HBase原理与实战归纳分享-上

文章插图
数据模型
  • Name Space:命名空间,类似于关系型数据库的 database 概念,每个命名空间下有多个表 。HBase 两个自带的命名空间,分别是 hbase 和default,hbase 中存放的是 HBase 内置的表,default表是用户默认使用的命名空间 。
  • Table:类似于关系型数据库的表概念 。不同的是,HBase 定义表时只需要声明列族即可,不需要声明具体的列 。因为数据存储时稀疏的,所有往 HBase 写入数据时,字段可以动态、按需指定 。因此和关系型数据库相比,HBase 能够轻松应对字段变更的场景 。
  • Row:HBase 表中的每行数据都由一个 RowKey 和多个 Column(列)组成,数据是按照 RowKey 的字典顺序存储的,并且查询数据时只能根据 RowKey 进行检索,所以 RowKey 的设计十分重要 。
  • Column:HBase 中的每个列都由 Column Family(列族)和 Column Qualifier(列限定符)进行限定,例如 info:name,info:age 。建表时,只需指明列族,而列限定符无需预先定义 。
  • Time Stamp:用于标识数据的不同版本(version),每条数据写入时,系统会自动为其加上该字段,其值为写入 HBase 的时间 。
  • Cell:由{rowkey, column Family:column Qualifier, timestamp} 唯一确定的单元 。cell 中的数据全部是字节码形式存储 。
应用场景