HBase 基础

Hbase 表的特点:

  • 大,一个表可以有数十亿行,上百万列(海量数据)。
  • 无模式,每行都有一个可排序的主键和任意多的列,列可以根据需要动态增加,同一张表不同的行可以有截然不同的列。
  • 面向列,面向列的存储和权限控制,列独立检索。
  • 稀疏,空列(null)不会占用存储空间,表可以设计得非常稀疏。
  • 数据多版本,每个单元中的数据可以有多个版本,默认情况下版本号自动分配,是单元格插入时的时间戳。
  • 数据类型单一,数据都是字符串。

Hbase 基本概念:

  • RowKey : Byte array. 可以理解为表的主键,方便快速查找。
  • Column Family: 列族,拥有一个名称,包含一个或者多个相关列。
  • Column: 只能属于某一个Column Family,每条记录可以动态添加。
  • Version Number: 类型为Long,默认是系统时间戳,可自定义。
  • Value(Cell): Byte array。

HBase 物理模型:

  • 每个Column Family存储在HDFS上的一个单独文件中,空值不会被保存。
  • Key 和 Version Number在每个column family中都有一份。
  • HBase为每份值维护了多级索引,即: <key, column family, column name, timestamp>
posted @ 2016-05-05 11:40  onionch  阅读(127)  评论(0)    收藏  举报