HBase(3):内部机制flush & compact & split

MBD-从一个示例看代码生成过程(rtw文件、TLC语言) 大概介绍了MBD代码生成流程,rtw文件、TLC语言 阅读详情

 

2018年11月27日 23:36:48 RayBreslin 阅读数:15

1.实现功能

当向hbase数据库中存储数据的时候,实际存储过程是有三个阶段:flush & compact & split。 

2.分步说明

(1)flush
       Client写入 -> 存入MemStore,一直到MemStore满(Hlog)-> Flush成一个StoreFile存储在HDFS上    
     
(2)compact
       StoreFile,直至增长到一定阈值 -> 触发Compact合并操作 -> 多个StoreFile合并成一个StoreFile 
     
(3)split
       单个StoreFile大小超过一定阈值后,触发Split操作,把当前Region Split成2个Region
       HMaster分配到相应的HRegionServer上     

3.hbase-default.xml中相关参数

 
  1. Flush:

  2. <!--当memstore的大小超过这个值的时候,会flush到磁盘。128M-->

  3. <property>

  4. <name>hbase.hregion.memstore.flush.size</name>

  5. <value>134217728</value>

  6. </property>

  7. <!--单个regionserver的全部memstore的最大值。超过这个值总容量(Max Heap=983.4 M)*0.4,

  8. 一个新的put插入操作会被挂起,强制执行flush操作。 -->

  9. <property>

  10. <name>hbase.regionserver.global.memstore.upperLimit</name>

  11. <value>0.4</value>

  12. </property>

  13. <!--当强制执行flush操作的时候,当低于这个值的时候,flush会停止。默认是堆大小的 35% . -->

  14. <property>

  15. <name>hbase.regionserver.global.memstore.lowerLimit</name>

  16. <value>0.35</value>

  17. </property>

  18.  
  19. Compact:

  20. <!--当一个HStore含有多于这个值的HStoreFiles(每一个memstore flush产生一个HStoreFile)的时候,会执行一个合并操作,把这HStoreFiles写成一个-->

  21. <property>

  22. <name>hbase.hstore.compactionThreshold</name>

  23. <value>3</value>

  24. </property>

  25. <!--一个Region中的所有HStoreFile的major compactions的时间间隔。默认是1天。-->

  26. <property>

  27. <name>hbase.hregion.majorcompaction</name>

  28. <value>86400000</value>

  29. </property>

  30.  
  31. Split:

  32. <!--最大HStoreFile大小。若某个列族的HStoreFile增长达到这个值,这个Hegion会被切割成两个。 默认: 10G.-->

  33. <property>

  34. <name>hbase.hregion.max.filesize</name>

  35. <value>10737418240</value>

  36. </property>

Unity 第一人称视角控制移动、旋转 第一人称视角操作此功能主要是借鉴YouTube,写的蛮好我就搬运过来让大家也试试。 阅读详情

相关推荐

android mtk camera如何自定义默认拍照与录像分辨率

本文详细解析了在Android MTK平台上自定义相机默认拍照与录像分辨率的方法。通过分析Camera2应用默认选择逻辑,定位并修改PictureSize.java与VideoQualityCaptureRequestConfig.java中的关键代码,实现绕过系统智能选择,强制指定最高或特定分辨率。文章还提供了进阶的可配置化方案与验证避坑指南,帮助开发者精准控制相机行为。

weixin_29194817的博客 434

Hbase的flush刷新机制

flush刷新机制(溢写合并机制): 流程: 客户端不断将数据写入到memStore内存中, 当内存中数据达到一定阈值后, 需要将数据溢写刷新的HDFS中 形成一个storeFile文件 阈值: 128M 或者 1小时 满足任意个都会触发flush机制 内部详细流程: hbase 2.0架构 以上流程: 1) 客户端不断向memStore中写入数据, 当memStore只数据达到阈值后, 就会启动flush操作 2) 首先hbase会先关闭掉当前这个已经达到阈值的内存空间, 然后开启一个新的memSto

weixin_59295776的博客 2372

MATLAB R2022b 安装教程

1. 下载安装先放资源链接,百度网盘太贵了不想续了,换了夸克网盘。1. 下载安装。

qq_51654158的博客 2万+

HBase的核心工作机制

​ 指的是当StoreFile不断的进行合并操作, 这个大的HFile就会变得越来越大, 当这个HFile达到一定阈值后, 就会触发Split分裂机制。思考: 请问 多个Master启动后, 如何选定谁成为Active Master呢?思考: Master是如何感知到RegionServer上线和下线呢?思考: 如果从一开始, 就有大量的并发, 如何解决呢?思考: 为啥要分裂呢?相关配置: hbase-site.xml。针对某一个表的列族开启: 优先级最高的。为什么是最终10GB呢?

yqqの博客 585

AI量化交易工作台Vibe-Trading:用自然语言驱动策略回测与多智能体研究

量化交易通过数学模型和计算机程序执行投资决策,其核心在于将市场规律转化为可验证的策略。传统量化开发涉及数据获取、策略编写、回测验证等复杂工程,对非编程背景的从业者构成较高门槛。随着大语言模型技术的发展,自然语言交互正成为降低技术使用难度的关键。Vibe-Trading项目正是这一趋势的实践,它将金融工程任务封装为可调用的工具与技能,允许用户通过自然语言指令直接驱动策略回测、因子研究和投资组合分析。其技术价值在于构建了一个模块化的AI Agent框架,通过ReAct推理框架协调多个专项技能,并创新性地引入多智

weixin_28695161的博客 1568

张正友标定法-MATLAB实验

该方法最早由微软研究院的Zhengyou Zhang教授提出,1998年发表在IEEE TRANSACTIONS ON PATTERNANALYSIS AND MACHINE INTELLIGENCE,论文题目为:AFlexible New Technique for Camera Calibration。 (一)标定平面到图像平面的单应性 单应性(homography):在计算机视觉中被定义

qq_37845624的博客 8290

HBase之flush

flush:将写缓存中的数据,上传到hdfs上,每次flush后,每个写缓存中的列族文件都会在hdfs上产生一个存储文件。 MemStore 刷写时机: 1.当某个 memstroe 的大小达到了 hbase.hregion.memstore.flush.size(默认值 128M), 其所在 region 的所有 memstore 都会刷写。 当 memstore 的大小达到了 hbase.hregion.memstore.flush.size(默认值 128M) * hbase.hregion.mems

weixin_44911106的博客 725

Python:同花顺全数据接口

# -*- coding: utf-8 -*- from iFinDPy import * from datetime import datetime import pandas as pd import time as _time import json from threading import Thread,Lock,Semaphore import requests sem = Semaphore(5) # 此变量用于控制最大并发数 dllock = Lock() #此变量用来控制实时行情推

代码过客 4万+

HBase Flush 解析

在对hbase操作中,数据读取/写入都是发生在某个HRegion下某个Store里的files。那么究竟在写入hbase时,一个region下到底发生了什么呢? 常见的有以下三种情况: 1)、memstore flush to disk 2)、columnfamily’s files compaction 3)、region split 首先介绍一些概念:hbase一个表(table)...

张伟的专栏 1001

机械臂标准DH建模及正运动学分析(以IRB4600型工业机械臂为例)

对于工业机械臂而言,运动学是不考虑力学特性的情况下对机械臂的几何参数与其位置、速度、加速度等运动特性的关系研究。DH建模是运动学的基础,全称为Denavit-Hartenberg建模方法,是一种广泛应用于机器人运动学中的建模技术。该方法通过在每个连杆上建立坐标系,并利用齐次坐标变换来实现连杆之间的坐标转换。通过依次变换,可以推导出末端执行器相对于基坐标系的位姿,从而建立机器人的运动学方程。以IRB4600型六自由度工业机械臂为例,选择标准DH建模方法,建立其正运动学模型。

chen_mp的博客 1万+

武汉大学朱玉贤院士团队再发Nature Genetics,阐述棉花独特折叠胚胎形成的分子调控与演化机制

武汉大学朱玉贤院士团队再发Nature Genetics,阐述棉花独特折叠胚胎形成的分子调控与演化机制。

Pangenes的博客 1335

Apache HBase 三个重要机制 Flush Compact Split

Flush机制 1.(hbase.regionserver.global.memstore.size)默认;堆大小的40% regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作,默认是堆大小的40%, 而且regionserver级别的flush会阻塞客户端读写 2.(hbase.hregion.memstore.flush.size)默认:128M 单个r...

大数据流浪法师的学习笔记与分享 643

基于深度学习的树木种类识别

本文介绍了基于深度学习的树木种类识别技术。我们将通过深度学习模型和图像处理技术实现对树木的自动识别与分类。首先,我们将介绍深度学习的基本原理和相关算法。接着,我们将详细说明树木种类识别的数据准备、模型构建和训练过程。最后,我们将给出代码示例,帮助读者深入了解和实践该技术。

一键难忘的博客 2318

HBase的3个重要机制

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;本篇博客,小菌为大家带来的是关于HBase的3个重要机制。 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.flush 机制 1.(hbase.regionserver.global.memstore.size) 默认;堆大小的40% regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作,默认是堆大小的40%,而且reg

大数据梦想家 4244

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Hbase学习笔记(四)——存储的三个机制(Flush、Compact、Split)

Hbase——存储的三个机制一、Flush二、Compact三、Split 一、Flush 当MemStore中的数据量达到阈值,就将数据Flush到HDFS中,以Storefile形式存储。 触发条件: 当某个store中的memstore的存储达到 128M hbase.hregion.memstore.flush.size = 134217728 当整个region所使用的...

AidenBrett7的博客 686

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Hbase三个重要机制

Hbase三个重要机制 文章目录Hbase三个重要机制1、flush机制2、compact机制3、split机制 1、flush机制 1.(hbase.regionserver.global.memstore.size)默认;堆大小的40% regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作,默认是堆大小的40%,而且regionserver级别的flu...

Mr_Yang888的博客 1万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

HBase的几种调优(GC策略,flush,compact,split)

一:GC的调优 1.jvm的内存   新生代:存活时间较短,一般存储刚生成的一些对象   老年代:存活时间较长,主要存储在应用程序中生命周期较长的对象   永久代:一般存储meta和class的信息   2.GC策略   Parrallel New Collector,垃圾回收策略   并行标记回收器(Concurrent Mark-Sweep Collector)   3.Par...

徐雄辉笔记 1024

HBase:HBase三个重要机制

HBase三个重要机制 flush机制 1.(hbase.regionserver.global.memstore.size)默认:堆大小的40% regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作,默认是堆大小的40%,而且regionserver级别的flush会阻塞客户端读写 2.(hbase.hregion.memstore.flush.size)...

3196

HBase 机制(三个重要机制)

1、================== flush机制 ======================= 1.(hbase.regionserver.global.memstore.size)默认;堆大小的40% regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作, 默认是堆大小的40%,而且regionserver级别的flush会阻塞客户端...

最慢的步伐不是跬步,而是徘徊;最快的脚步不是冲刺,而是坚持 6823

HBase三个重要机制

一、flush机制 1.(hbase.regionserver.global.memstore.size)默认;堆大小的40% regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作,默认是堆大小的40%,而且regionserver级别的flush会阻塞客户端读写 2.(hbase.hregion.memstore.flush.size)默认:128M...

依旧的博客 3870

HBase系列(三)、读写原理,Flush刷写,HFile Compact合并,Region Split切分

本篇内容介绍Hbase的读写原理及Flush,Compact,Split原理。为Hbase系列的第三篇。 HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase可在廉价服务器上搭建起大规模结构化存储集群。是Apache软件基金会的Hadoop项目的一部分,运行于HDFS文件系统之上,因此可以容错地存储海量稀疏的数据。 HBase是一个开源的非关系型分布式数据库(NoSQL),它参考了谷歌的BigTable建模,使用Java语言进行实现。但是也有很多不同之处

王义凯 的博客 1520

HBase -- 三个重要机制, 预分区,HBase的rowKey设计技巧

HBase三个重要机制 1、flush机制 1.(hbase.regionserver.global.memstore.size)默认;堆大小的40% regionServer的全局memstore的大小,超过该大小会触发flush到磁盘的操作,默认是堆大小的40%,而且regionserver级别的flush会阻塞客户端读写 2.(hbase.hregion.memstore.flush...

kismet 2654

Hbase底层原理和机制

1、HBase基本介绍 简介 hbase是bigtable的开源java版本。是建立在hdfs之上,提供高可靠性、高性能、列存储、可伸缩、实时读写nosql的数据库系统。 它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实现多表join等复杂操作)。 主要用来存储结构化和半结构化的松散数据。 Hbase查询数据功能很...

Imflash的博客 1770

大数据最难源码 hbase 源码 (五)之 Flush,Split,Comact 核心流程源码

HBase Flush,Split,Comact 三大动 作流程源码HBase FlushHBase SplitHBase Comact 作流程源码) HBase Flush 总是要回顾下前面的,不妨回看 上一篇 好了,不多说,上干货 看图 MemStore 不是无限大的,当写入数据达到一定阈值条件的时候,就需要执行 Flush 动作,将数据持久化到磁盘。而负责帮助 MemStore 执行 Flush 到磁盘的组件 就是 MemStoreFlusher 组件。 MemStore 的默认实现是:D

leaxning的博客 550

HBase 入门学习

这意味着,往 HBase写入数据时,字段可以动态、按需指定。因此,和关系型数据库相比,HBase能够轻松应对字段变更的场景。(3)RowHBase 表中的每行数据都由一个RowKey和多个 Column(列)组成,数据是按照 RowKey的。

weixin_44361163的博客 935
上一篇: HBase之Rowkey设计总结及易观方舟实战篇
下一篇: Hbase compact以及split跟踪
王树民
博客等级 码龄10年 912粉丝 560原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值