HBase的目录结构

原创 2013年12月05日 11:34:03

HBASE的目录结构如图:



根目录文件(Root-level files)

第一部分文件是被Hlog处理的write-ahead日志文件,这些日志文件被保存在HBase根目录下的.logs文件夹。.logs目录下面为每一个HRegionServer单独创建一个文件夹,每一个文件夹下有几个HLog文件(因为log rotation)。每一个HRegionServer的所有region都共享一个HLog文件。

当一个日志文件不再需要时(因为其包含的“编辑信息”都已经持久化保存到store files),该日志文件会被保存到数据库根目录下.oldlogs文件夹。.oldlogs目录下的文件在10分钟后会被master删除(该时间可以由hbase.master.logcleaner.ttl参数设置)。Master会每隔一分钟(该时间可以由hbase.master.cleaner.interval参数设置)检查这些旧日志文件。

第二部分文件是hbase.idhbase.version文件,hbase.id记录了集群的唯一标识;hbase.version记录了文件格式的版本号。

第三部分,随着时间的增长,在根目录下还会产生一些其他目录。split.corrupt目录在日志分裂过程中使用,以便保存一些中间结果和损坏的日志。

表级文件(Table-level files)

HBase的每一张表在根目录下都有一个单独的文件夹(在这里我们称为表目录)。在表目录下有一个命名为.tableinfo的文件,该文件保存了该表所对应的已经序列化的HTableDescriptorHTableDescriptor包含了表和column family模式。除了.tableinfo之外,还有.tmp目录。.tmp目录有很多作用,举例来说,需要在.tableinfo更新过程中被使用。

域级文件(Region-level files)

在表目录下,为该表的每一个region单独创建一个目录,目录的名字为region nameMD5哈希值。整个的目录结构如下所示:

/<hbase-root-dir>/<tablename>/<encoded-regionname>/<column-family>/<filename>

在每一个column-family目录下保存着真正的数据文件。这些数据文件以随机数来命名,由Java内置的随机数生成器产生。HBase程序非常智能,可以发现随机数重复,以防止命名重复;直到找到未使用的随机数为止。

region目录包含.regioninfo文件,该文件包含了该region所对应的HRegionInfo所对应的经过序列化的信息。除了该文件之外,还有一个可选的目录.tmp会随着需求的出现被创建,例如在合并过程中重写文件。


版权声明:本文为博主原创文章,未经博主允许不得转载。

Hadoop HDFS本地存储目录结构解析

HDFS metadata以树状结构存储整个HDFS上的文件和目录,以及相应的权限、配额和副本因子(replication factor)等。本文基于Hadoop2.6版本介绍HDFS Namenod...
  • opensure
  • opensure
  • 2016年05月19日 11:38
  • 13331

HBase的目录结构

根目录文件(Root-level files) 第一部分文件是被Hlog处理的write-ahead日志文件,这些日志文件被保存在HBase根目录下的.logs文件夹。.logs目录下面为每一个HR...
  • zuochanxiaoheshang
  • zuochanxiaoheshang
  • 2013年10月10日 21:44
  • 3196

查看HBase表在HDFS中的文件结构

查看HBase表在HDFS中的文件结构
  • WuXiaoQuan824212
  • WuXiaoQuan824212
  • 2016年09月07日 21:47
  • 2281

HBase在HDFS上的目录结构

总所周知,HBase 是天生就是架设在 HDFS 上,在这个分布式文件系统中,HBase 是怎么去构建自己的目录树的呢? 这里只介绍系统级别的目录树。 一、0.94-cdh4.2.1版本 ...
  • CNHK1225
  • CNHK1225
  • 2016年09月09日 23:25
  • 972

Hbase在HDFS上的各个目录作用

1、/hbase/.META. 就是存储1中介绍的 META 表的存储路径。 2、/hbase/.archive HBase 在做 Split或者 compact 操作完成之...
  • jsjsjs1789
  • jsjsjs1789
  • 2016年10月05日 16:27
  • 571

HBase的目录结构

HBASE的目录结构如图: 根目录文件(Root-level files) 第一部分文件是被Hlog处理的write-ahead日志文件,这些日志文件被保存在HBase根目录下的.log...
  • whb123andy
  • whb123andy
  • 2013年12月05日 11:34
  • 1023

查看HBase表在HDFS中的文件结构

问题导读: 1.hdfs中的建立的目录. 表与目录的关系式什么?一个表是否对应一个目录? 2.-ROOT-表和.META对应几个文件? 3.splitlog和.corrupt目录是用来做什么的?...
  • gingerredjade
  • gingerredjade
  • 2017年03月19日 21:52
  • 546

hbase目录结构

hbase的数据保存在hadoop的hdfs中。通过hbase-site.xml配置hbase.rootdir制定在hdfs的路径 目录组成如下图: WALs目录中保存了hbase...
  • u011984824
  • u011984824
  • 2013年11月21日 16:23
  • 2933

Hbase1.3.1 完全分布式搭建。

hbase的搭建是比较简单的,无论是单机模式还是分布式都相对容易。本人选择的是1.3.1的版本,按照官方的文档很快就搭建起来了,但是启动的时候出现了错误。无论是baidu还是google都没有找到答案...
  • Leafage_M
  • Leafage_M
  • 2017年07月16日 17:45
  • 2564

Hbase架构与原理

HBase是Apache Hadoop中的一个子项目,Hbase依托于Hadoop的HDFS作为最基本存储基础单元,通过使用hadoop的DFS工具就可以看到这些这些数据存储文件夹的结构,还可以通过M...
  • yangjinming24
  • yangjinming24
  • 2016年07月15日 15:23
  • 10276
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HBase的目录结构
举报原因:
原因补充:

(最多只允许输入30个字)