第一部分文件是被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.id和hbase.version文件,hbase.id记录了集群的唯一标识;hbase.version记录了文件格式的版本号。

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

表级文件(Table-level files)

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

域级文件(Region-level files)

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

/

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

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

hbase 默认目录_详解HBase目录结构的三大部分相关推荐

  1. python操作目录_详解python中的文件与目录操作

    详解python中的文件与目录操作 一 获得当前路径 1.代码1 >>>import os >>>print('Current directory is ',os. ...

  2. hbase 二进制数据写入_分布式数据库HBase的架构设计详解(有彩蛋)

    原标题:分布式数据库HBase的架构设计详解(有彩蛋) 本文根据DBAplus社群第99期线上分享整理而成,文末还有好书送哦~ 讲师介绍 陈鸿威 云财经大数据CTO 曾任百度高级工程师,现主持设计开发 ...

  3. Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

    编者按:HDFS和MapReduce是Hadoop的两大核心,除此之外Hbase.Hive这两个核心工具也随着Hadoop发展变得越来越重要.本文作者张震的博文<Thinking in BigD ...

  4. Thinking in BigData(八)大数据Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解

          纯干货:Hadoop核心架构HDFS+MapReduce+Hbase+Hive内部机理详解. 通过这一阶段的调研总结,从内部机理的角度详细分析,HDFS.MapReduce.Hbase.H ...

  5. HBase的布隆过滤器详解

    HBase的布隆过滤器详解 1.布隆过滤器的简单介绍 2.布隆过滤器的原理分析 2.1 哈希表存在的问题 2.2 布隆过滤器的原理 2.2.1 原理详解 2.2.2 布隆过滤器失误率的调节 2.2.3 ...

  6. 详解 Vue 目录及配置文件之 build 目录

    详解 Vue 目录及配置文件之 build 目录 1.1 项目目录介绍 目录/文件 说明 详解 build 项目构建(webpack)相关代码 详解 config 配置目录,包括端口号等 详解 nod ...

  7. 使用ls命令查看Linux的目录结构,linux ls命令查看目录文件详解

    首页 > Linux教程 > 常用命令 > ls 查看目录文件 linux ls命令查看目录文件详解 linux中ls命令用来查看目录中的所有文件和子目录,可选的参数比较多,本文筛选 ...

  8. Android 开发 存储目录的详解

    Android 开发 存储目录的详解 简介 Android设备,有3个地方的文件存储位置,他们分别是: 内部存储空间(用户无法浏览到此目录) 外部存储空间(就是手机自身的文件管理目录,用户可以浏览) ...

  9. linux php 上级目录,Linux目录架构详解_php

    linux和Windows操作系统的显著区别之一就是目录架构的不同.Linux操作系统的目录架构遵循文件系统层级结构标准.不知你是否使用ls命令浏览过Linux的根目录"/",亲爱 ...

最新文章

  1. (C++)1046 划拳
  2. python pytz 获取指定时区的时间
  3. python项目实例代码-python开源项目及示例代码
  4. php 处理raw数据,php以raw格式传递数据
  5. spring data jpa实现有条件的分页查询功能
  6. python使用GUI(图形用户界面)
  7. 信息学奥赛C++语言:求三位数的值
  8. mybatis使用拦截器显示sql,使用druid配置连接信息
  9. LUNA16_Challange数据预处理2
  10. 模拟新浪新闻在线聊天功能
  11. 如果我建一个外卖平台,不收取商家佣金和骑手提点,会不会成功?
  12. VisualStudio2005英文版被SQL2005简体中文版汉化
  13. spring集成testng
  14. linux下载百度网盘文件
  15. JavaScript获取移动设备型号的实现代码(JS获取手机型号和系统)
  16. 英语学习详细笔记(五)WH问句、祈使句、感叹句
  17. 狂妄之人音乐计算机乐谱,天谕手游狂妄之人乐谱_狂妄之人乐谱代码分享_3DM手游...
  18. python大数据计算_大数据计算平台 python
  19. 益智拼图APP隐私政策
  20. wps透视表列总计移到顶部_在数据透视表顶部显示总计

热门文章

  1. JAVA8之collect总结
  2. Mari 调整图片透明度
  3. oracle监听器状态,oracle 监听器概念
  4. java rpg对战_[源码和文档分享]基于java的RPG回合制游戏
  5. leetcode投骰子问题动态规划
  6. 速通JavaScript基础部分
  7. python有趣的例子和故事_Python几个有趣和特别的小故事|python基础教程|python入门|python教程...
  8. Linux(Ubunru或者CentOS)上安装JDK1.7 (附带JDK1.7下载链接)
  9. 绝地求生服务器停服维修通告,绝地求生:新版本第一次停服维护,BUG却比之前还要严重...
  10. linux 命令脚本文件,Linux编写shell脚本执行多个命令