美文网首页程序员
HBase数据表解析

HBase数据表解析

作者: Real_man | 来源:发表于2018-11-30 08:47 被阅读33次

    这次主要分析一下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提供了三种常用的压缩类型,如下,并且官方给出的压缩率如下:

    image

    Hbase数据存储目录解析

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


    image image
    • .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最重要的系统表。

    参考

    相关文章

      网友评论

        本文标题:HBase数据表解析

        本文链接:https://www.haomeiwen.com/subject/sorccqtx.html