继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

HBase数据表解析

艾贺521
关注TA
已关注
手记 292
粉丝 1.1万
获赞 1544

这次主要分析一下Hbase的数据表

hbase

建表语句分析

我们分析下条语句,在hbase shell中,直接按create命令不带参数,hbase会提示建表的语法。

create ‘demo:user’, {NAME => ‘f1’, VERSIONS => 5, COMPRESSION => ‘SNAPPY’,COMPRESSION_COMPACT=>‘snappy’,‘REPLICATION_SCOPE’=>1}

  • 表名字叫做’demo:user’
  • NAME 列族名字是 f1,记住建表一定要指定列族名
  • VERSION 是Hbase的表保存的数据版本数,默认保存3个版本
  • REPLICATION_SCOPE 值可以为0或者1,0代表不复制,1代表启用复制
  • COMPRESSION_COMPACT,COMPRESSION 是表的压缩类型

Hbase提供了三种常用的压缩类型,如下,并且官方给出的压缩率如下:

Hbase数据存储目录解析

我们在搭建Hbase的时候需要在hbase-site.xml中指定其存储目录,Hbase在指定的目录中构造数据数据

  • .tmp 当对表进行创建和删除的时候会把表移动到.tmp目录下,然后再进行表操作,他是一个临时的数据交换目录
  • WALS 理解为存储Hbase的操作日志
  • archive 管理表的归档,这个由一个定时任务定时处理,管理和维护hbase的数据
  • corrupt 一般是损坏的数据
  • data 存储数据的核心目录
  • hbase.id 标识hbase进程
  • hbase.version 表名的
  • oldWALs 日志已经被持久化之后,日志就被移动到这个目录下等待删除
  • data/default 目录存储的是当前Hbase内包含的的表信息
  • data/hbase 存储元数据和命名空间

Hbase的元信息表

hbase的元数据表为’hbase:meta’,存储在ZooKeeper上面。它也是一张普通的hbase表。它的结构如下:

region是存储数据的最基本单元

Key:

  • table,key,time 三个部分的组合。因为Hbase根据rowkey排序,所有可用很快的找打对应的表

Values: 指向的是region server指向的region

  • info:regioninfo 对于region的基本信息存储,平时基本上用不到
  • info:server region服务器的地址和端口,这样就可以找到服务器
  • info:serverstartcode 数据校验的时候才用得到的

里面的值也是会进行变化的。RegionServer挂掉,它也会及时的更新,Hbase表相当于Hbase的第一级索引,是Hbase最重要的系统表。

参考

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP