Hbase Region拆分入门
HBase通常根据hbase-default.xml和hbase-site.xml配置文件中的设置来处理区域划分。重要设置包括hbase.regionserver.region.split.policy
,hbase.hregion.max.filesize
,hbase.regionserver.regionSplitLimit
。
拆分的一种简化视图是,当区域增长到hbase.hregion.max.filesize时,将对其进行拆分。对于大多数使用模式,应使用自动拆分。有关手动区域分割的更多信息,请参见手动区域分割决策。
您可以选择自己管理拆分,而不是让HBase自动拆分您的区域。如果您非常了解rowkey空间,则可以手动管理拆分,否则让HBase为您确定拆分的位置。手动拆分可以减轻region创建和负载下的移动。它还使区域边界是已知且不变的(如果禁用区域划分)。如果使用手动拆分,则更容易进行基于时间的交错压缩,以分散网络IO负载。
禁用自动拆分
要禁用自动拆分,可以在集群配置或表配置中将区域拆分策略设置为org.apache.hadoop.hbase.regionserver.DisabledRegionSplitPolicy
推荐自动分割
如果禁用自动拆分以诊断问题或在数据快速增长期间,建议在情况变得更稳定时重新启用它们。管理区域分裂自己的潜在好处并非没有争议。
确定预分割区域的最佳数量
**Pre-Splits的最佳数量取决于您的应用程序和环境。**一个好的经验法则是从每个服务器10个预分区域开始,并观察数据随时间增长的情况。最好在区域太少的一侧犯错误,然后再进行滚动拆分。最佳区域数取决于您所在区域中最大的StoreFile。如果数据量增加,则最大的StoreFile的大小将随时间增加。目的是使最大区域足够大,以使压缩选择算法仅在定时大压缩期间对其进行压缩。否则,群集可能会同时受到大量region的压缩风暴。重要的是要了解数据增长会导致压缩风暴,而不是手动拆分决定。
如果将区域分成太多大区域,则可以通过配置HConstants.MAJOR_COMPACTION_PERIOD
来增加主要压缩间隔。 org.apache.hadoop.hbase.util.RegionSplitter
实用程序还提供所有区域的网络IO安全滚动拆分。
几个参数详解
hbase.hregion.max.filesize
可以通过如下参数设置
描述
最大文件大小。 如果某个区域的HFiles大小的总和超过了该值,则该区域将一分为二。 关于此选项的工作方式,有两种选择,一种是当任何Store的大小超过阈值然后拆分时,另一种是整个区域的大小超过阈值然后拆分时,可以通过hbase.hregion.split.overallfiles进行配置。
默认
10737418240 就是10G的意思,这个数是比较大的.
hbase.regionserver.region.split.policy
描述
拆分策略确定何时应拆分区域。 当前可用的其他各种拆分策略为BusyRegionSplitPolicy,ConstantSizeRegionSplitPolicy,DisabledRegionSplitPolicy,DelimitedKeyPrefixRegionSplitPolicy,KeyPrefixRegionSplitPolicy和SteppingSplitPolicy。 DisabledRegionSplitPolicy
阻止手动区域分割。
默认
org.apache.hadoop.hbase.regionserver.SteppingSplitPolicy
hbase.regionserver.regionSplitLimit
就是管理region数目的上限,默认值为1000.
描述
region数量的限制,之后不应再进行区域划分。 这不是对区域数量的硬限制,但可作为区域服务器在特定限制后停止拆分的准则。 默认设置为1000。
默认
1000
Hbase Region拆分入门相关推荐
- hbase region拆分的三种方式
我们都知道,region在数据量大到一定程度的时候,会进行拆分(最开始由一个变成二个),而拆分的方式有三种,包括预拆分.自动拆分.手动强制拆分.下面就来介绍介绍拆分的方式. 预拆分 预拆分(pre-s ...
- HBase读写流程、flush、文件合并、region拆分
HBase存储原理(架构) HBase依赖于Zookeeper和Hadoop的,所以在启动HBase前需要启动Zookeeper和Hadoop. HMaster用于管理整个HBase集群,即管理每个H ...
- HBase Region 自动拆分策略
原文地址:https://cloud.tencent.com/developer/article/1374592 HBase自定义拆分策略 自定义拆分策略 您可以使用自定义RegionSplitPol ...
- HBase读写原理与Region拆分合并
一,HBase读写原理深入 HBase读流程 meta表位于的位置信息查看>>>> HBase写流程 首先从zk找到meta表的region位置,然后读取meta表中的数据,m ...
- HBASE region简介
HBASE region简介 一.为什么要预分区 二.region拆分方式 (一)自动拆分 (二)预拆分 (三)强制拆分 三.推荐Region拆分的方案 四.Hbase的Web界面简单介绍 五.ROW ...
- HBase系列从入门到精通(三)
1.整合Phoenix 1.1.Phoenix简介 1.1.1.Phoenix定义 Phoenix是HBase的开源SQL皮肤.可以使用标准JDBC API代替HBase客户端API来创建表,插入数据 ...
- 华为HD 6.5.1.7版本 hbase region分裂问题
[操作步骤&问题现象] hbase 版本 1.3.1 有关region分裂参数采用默认未调整. [问题现象] 现有A业务 每天创建一个hbase表预分5region,最近查看时发现表变成10r ...
- HBase Region 简介和建议数量大小
Region是HBase数据管理的基本单位,region有一点像关系型数据的分区. region中存储这用户的真实数据,而为了管理这些数据,HBase使用了RegionSever来管理region. ...
- HBase Region原理总结归纳
HBase Region原理总结 1. 环境准备 基于Hadoop 3.2.1 基于zookeeper 3.4.6 基于Hbase 2.2.5 资料来源: 官网http://hbase.apache. ...
最新文章
- asp.net的cms 核心代码篇
- Android String.xml 批量翻译工具 | Android string.xml 各国语言转换
- Android之异步消息处理机制Handler源码解析
- Linux下制作动图的软件,Linux 下制作Gif动画
- What's New In DevTools (Chrome 59)来看看最新Chrome 59的开发者工具又有哪些新功能
- containerd安装及常用命令
- 移动硬盘拷贝linux文件,Linux下使用移动硬盘拷贝数据
- 随想录(源代码预处理命令)
- 数字语音识别 - 源码下载|数值算法/人工智能|matlab例程|源代码 - 源码中国
- php5.5 下载安装,【图片】PHP5.2、5.3、5.4、5.5、5.6的php memcache dll扩展下载和安装【洄溪吧】_百度贴吧...
- 为知一而学十,人生而孤独
- 关于将驱动整合至ESXi镜像过程中的一些小坑
- 263企业邮箱imap服务器,263企业邮箱实现IMAP邮箱搬家功能
- oracle12c安装过程
- win10 租约到期不可连网
- [附源码]Python计算机毕业设计SSM建筑工程管理系统(程序+LW)
- dot.tk+namecheap.com搭建免费顶级域名+快速动态域名+Dns解析
- 用Cufflinks计算差异表达
- Qt TCP/UDP局域网通信软件 模仿QQ TIM
- 360n4s高通版卡刷包
热门文章
- linux uwsgi 非root,ubuntu-除非root用户,否则uWSGI Emperor权限被拒...
- python django项目实例_【Django】项目实例
- web表格增删改_白话django之数据的增删改
- centos ipv6 网卡_Linux_03-Centos的基本网络配置
- kotlin编译失败_关于应用Kotlin后的编译速度问题
- python源码_Python爬虫入门之获取网页源码
- c语言对分求解方程,用C语言对一元二次方程求解
- python画一个祝福别人生日快乐_还在送生日贺卡?试试为家人朋友创作一个生日动画短视频吧...
- qlistwidget窗口隐藏会发送什么信号_为什么wifi连的人越多,就越慢?
- android xml 预览,解决Android studio xml界面无法预览问题