赞
踩
HBase 数据库中也有一个表示唯一的键,这个唯一的键是 RowKey。
RowKey 组成:HBase 中 RowKey 由任意字符串组成,组成长度不超过 64KB ,在实际应用中长度一般为10-100bytes,一般用到70-100bytes就能满足需求,在HBASE内部,RowKey保存为字节数组。存储时,数据按照RowKey的字典序(byte order)排序存储。设计RowKey时,要充分排序存储这个特性,将经常一起读取的行存储放到一起。
HBase 中行的访问方式有三种:
列族: HBase 中的每个列,都属于某一个列族,列族必须在使用表之前定义,列名都以列族作为前缀,例如:‘a1:b1’,‘a1:b2’,其中列族是 a1 ,而列族的值为 ‘b1’ 和 ‘b2’
HBase 中的 Cell表示的是表中的单元格,由{rowkey, column Family:columu, version} 唯一确定的单元。cell中的数据是没有类型的,全部是字节码形式存贮。
其中 version 就是这个单元格中的 Time Stamp
HBASE 中通过rowkey和columns确定的为一个存贮单元称为cell。每个 cell都保存 着同一份数据的多个版本。版本通过时间戳来索引。时间戳的类型是 64位整型。时间戳可以由HBASE(在数据写入时自动 )赋值,此时时间戳是精确到毫秒 的当前系统时间。时间戳也可以由客户显式赋值。如果应用程序要避免数据版 本冲突,就必须自己生成具有唯一性的时间戳。每个 cell中,不同版本的数据按照时间倒序排序,即最新的数据排在最前面。
为了避免数据存在过多版本造成的的管理 (包括存贮和索引)负担,HBASE提供 了两种数据版本回收方式。一是保存数据的最后n个版本,二是保存最近一段时间内的版本(比如最近七天)。用户可以针对每个列族进行设置。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。