hbase的表结构

[TOC]

1 hbase的表结构

1.1 row key

row key是行键,是每一行记录都有的一个唯一key,这是我们查询的主要方式

1.2 列族

列族可以看作是多个列的集合,一个列族中包含多个列,同一个列族中的数据会存储在同一个文件,利用好列族可以提升查询速度,列族属于schema的一部分,意味着我们创建表的时候要指定列族,列名都以列族作为前缀,比如 user:id,user:name都属于user这个列族

1.3 单元

hbase是一个三维表,因为它有时间的概念,所以一个单元,其实就是类似excel中的一个格子,但是与之不同的是,不同的时间维度,对应的单元也不一样

或者这样说,通过row key,列族,版本而确定的唯一的一个单元,而在hbase中,单元是没有数据类型的,全部都是字节

1.4 时间戳

之前也提到了,hbase是一个三维表,我们每保存一条数据,都肯定会有一个时间戳,如果我们不给,那么hbase在保存的时候会自动给,所以它是一个肯定有的一个值,同一个单元,在不同的时间版本中,会有不同的数据

比如对应用户手机号码的这一个单元,在不同的时间段,它会有不同的手机号码,因为用户可能会换手机号码,而我们就可以通过时间戳的版本,记录用户多次更换的手机号码

你可能感兴趣的:(hbase的表结构)