个 Region,Region会下线,新Split出的2个子Region会被HMaster分配到相应的HRegionServer 上,使得原先1个Region的压力得以分流到2个Region上由此过程可知,HBase只是增加数据,有所得更新和删除操作,都是在Compact阶段做的

HBase File In HDFS。

HBase 文件可以分成两类:
    一、直接位于HBase根目录下。(HLog)
    二、位于表目录下文件
    1)根目录
        第一类文件是由HLog 实例处理的 WAL 文件,这些文件创建在 HBase 跟目下一个称为 .logs 的目录中。.logs目录下包含针对每个 HRegionServer的子目录。每个子目录下通常有几个 HLog 文件 (因为日志的切换产生),来自相同 RegionServer的Region 共享这些 HLog 文件。 对于最新创建的HLog文件通常大小为0,因为 HDFS 正使用一个内置的 append 支持来对文件进行写入,同时对于读取者来说只有那些完整的 Block 才是可用的, 包括 hadoop fs -lsr 命令。 尽管写操作的数据被安全地持久化,但是当前写入的日志文件大小信息有些轻微的不同。 日志文件每小时切换一次(默认 60分钟)后, 这个时间是由 hbase.regionserver.logrool.period 配置项控制。 等日志文件切换后,可以查看其正确大小,因为该文件已经被关闭了,所以HDFS 可以获取正确的状态。而其之后的新日志文件戴傲又会变为0.
        当日志文件不再需要时,现有的表更已经持久化到存储文件中了,他们就会诶移动到 HBase 根目录的 .oldlogs 目录中。 这是在日志文件达到上面的切换阈值时触发的。 老的日志文件默认会在10分钟后被 Master 删除, 通过 hbase.master.logcleaner.ttl 设定。 Master 默认每分钟会对这些文件进行检查,可以通过 hbase.master.cleaner.interval 设定。
    2)表
        HBase 中的每个表都有他自己的目录,位于HBase 根目录之下(最最开始讲的HBase表命名要规范的作用,因为他又是文件名)(更正0.98以后貌似改了。不是上面的/hbase/表,而是 /hbase/date/default/表,待验证)。每个表目录都有个.tableinfo 的顶层文件,该文件保存了针对该表的 HTableDescriptor 序列化后的内容,包含了一些元数据信息,同时可以被读取。可以通过工具查看表的定义;tmp 包含了一些中间数据。
        
        
        

    3 Region
    在每个表目录内,最对表的Schema 中的每个列族会有一个单独的目录。目录名称还包含 Region 名称的 MD5 哈希部分。 对于存储在磁盘上的目录中的 Region 名称。
    一旦一个Reion 因为容量大小而需要 split , 会创建一个阈值对应的 splits 目录,用来筹划产生两个子 Region。通常只需要几秒或更短的时间,该过程成功之后他们会被移入表目录下用来形成两个新的 Region , 每个代表原始 Region 的一半.换句话说,如果发现一个Region 目录下没有 .tmp 目录,那么说明目前他还没有执行合并。如果也没有 recovered.edits 目录,那么说明目前没有针对他的 WAL 回放。

    // 【表名】,【起始rowkey,如果从0开始 就不写 ,,】【 蓝色部分为后半部分。是哈希。尾部的点事整个 Region 的一部分,是一种包含哈希的新风格。】
    例如:p_t_rss ,[rk-1000],1440470934157 .41ba12b50dfcf29053b8de5725dc518.

    


Region 切分。
    








23 HBase 存储架构。的更多相关文章

  1. HBase存储架构

    以下的介绍是基于Apache Hbase 0.94版本: 从HBase的架构图上可以看出,HBase中的存储包括HMaster.HRegionServer.HRegion.Store.MemStore ...

  2. HBase系统架构及数据结构(转)

    原文链接:Hbase系统架构及数据结构 HBase中的表一般有这样的特点: 1 大:一个表可以有上亿行,上百万列 2 面向列:面向列(族)的存储和权限控制,列(族)独立检索. 3 稀疏:对于为空(nu ...

  3. 列式存储hbase系统架构学习

    一.Hbase简介 HBase是一个开源的非关系型分布式数据库(NoSQL),它参考了谷歌的BigTable建模,实现的编程语言为 Java.它是Apache软件基金会的Hadoop项目的一部分,运行 ...

  4. Hbase系统架构

    HBase 系统架构 HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列 ...

  5. HBase 系统架构

    HBase是Apache Hadoop的数据库,能够对大型数据提供随机.实时的读写访问.HBase的目标是存储并处理大型的数据.HBase是一个开源的,分布式的,多版本的,面向列的存储模型.它存储的是 ...

  6. Hbase的架构原理、核心概念

    Hbase的架构原理.核心概念 1.Hbase的表.行.列.列族 2.核心组件: Table和region Table在行的方向上分割为多个HRegion, 一个region由[startkey,en ...

  7. HBase存储剖析与数据迁移

    1.概述 HBase的存储结构和关系型数据库不一样,HBase面向半结构化数据进行存储.所以,对于结构化的SQL语言查询,HBase自身并没有接口支持.在大数据应用中,虽然也有SQL查询引擎可以查询H ...

  8. hbase 存储结构和原理

    HBase的表结构 建表时要指定的是:表名.列族 建表语句 create 'user_info', 'base_info', 'ext_info' 意思是新建一个表,名称是user_info,包含两个 ...

  9. HBase体系架构和集群安装

    大家好,今天分享的是HBase体系架构和HBase集群安装.承接上两篇文章<HBase简介>和<HBase数据模型>,点击回顾这2篇文章,有助于更好地理解本文. 一.HBase ...

随机推荐

  1. 【原创】查询占CPU高的oracle进程

    1:首先使用TOP命令传到占用CPU高的SPID号 PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND3575 oracle 1 12 ...

  2. 3ds Max灯光教程之卧室灯光布局实例

    对于设计师来说要做好一张好的作品效果图包括很多比如:“造型.色彩搭配.灯光气氛.构图角度等等,上次给大家详细的分析了下产品渲染中摄像机的构图及原理.本期教程来跟大家讨论一下max场景灯光布局问题.以卧 ...

  3. kissy延迟加载demo

    <!doctype html><html><head>    <meta charset="gbk"/>    <title& ...

  4. NOIp2018模拟赛三十六

    好久没打模拟赛了...今天一样是两道国集,一道bzoj题 成绩:13+0+95=108 A题开始看错题了...导致样例都没看懂,结果xfz提醒我后我理解了一个我自认为正确的题意(事实证明我和xfz都错 ...

  5. luogu P4018 Roy&October之取石子(博弈论)

    题意 题解 如果n是6的倍数,先手必败,否则先手必胜. 因为6*x一定不是pk 所以取得话会变成6*y+a的形式a=1,2,3,4,5: 然后a一定为质数.我们把a取完就又成为了6*x的形式. 又因为 ...

  6. 【Python常见问题总结】

    1. python2 中 end = '' 取消换行没有用 解决办法: 在程序开始加入 from __future__ import print_function 2. 如何在电脑上同时使用pytho ...

  7. vue源码之响应式数据

    分析vue是如何实现数据响应的. 前记 现在回顾一下看数据响应的原因. 之前看了vuex和vue-i18n的源码, 他们都有自己内部的vm, 也就是vue实例. 使用的都是vue的响应式数据特性及$w ...

  8. 紫书 习题 8-25 UVa 11175 (结论证明)(配图)

    看了这篇博客https://blog.csdn.net/u013520118/article/details/48032599 但是这篇里面没有写结论的证明, 我来证明一下. 首先结论是对于E图而言, ...

  9. [Typescript] Build Method decorators in Typescript

    To using decorate, we can modifiy tsconfig.json: { "compilerOptions": { ... "experime ...

  10. [ML] Daily Portfolio Statistics

    Let's you have $10000, and you inverst 4 stocks. ['SPY', 'IBM', 'XOM', 'GOOG']. The allocation is [0 ...