Hbase是什么
Hbase 是hadoop上的分布式数据库,基于列存储,是google bigtable的开源实现,是Apache hadoop项目的子项目
hbase 为实时读写大数据提供了手段
hbase行存储与传统的列存储对比
传统行式关系型数据库:略
hbase的列式存储,每一列单独存放
数据既是索引
只访问查询所需的列,减少IO
每一列由一个线索管理,并发
数据类型一致(只有字符串),数据特征相似-高效压缩
按列存储,null不占空间,表可以设计的非常稀疏
关键概念
row_key:
序列化后的字节数据,表中的行将据此排序,所有对表的访问都要通过键
column family:
列族,hbase中的每一列都必须属于某个列族,列族必须作为表模式的一部分在定义时给出,同一列族中的数据将存储在统一目录下
timestamp(64位整数):
hbase对某个cell的数据有多个版本,根据timestamp区分不通版本,timestamp默认是写入数据时的时间值(当前系统时间,精确到毫秒),时间戳也可以由用户来指定,个人认为最好制定该值,这样就可以很方便的对某一时间戳的数据进行批量操作
region: