10. Hbase Compaction命令

一. 什么是Compaction

在 HBase 中,频繁进行数据插入、更新和删除操作会生成许多小的 HFile,当 HFile 数量增多时,会影响HBase的读写性能。此外,垃圾数据的存在也会增加存储需求。因此,定期进行 Compact操作,可以有效地提升HBase系统的性能,减少存储空间。

在HBase中,Compaction主要有两种类型:

  • Minor Compaction:将多个小的HFiles合并成一个较大的HFile,不会删除过期和标记为删除的数据。
  • Major Compaction:将所有 HFiles 合并,会清理掉在HBase中标记为删除的数据,一般比较费时。可能会对RegionServer的CPU和IO造成较大的压力
二. Compaction实操

HBase表中已经存在一个名为dns_message, 数据量为1亿多条。想对其进行手动 Minor Compaction,可以执行下面的命令:

bash 复制代码
hbase:010:0> compact 'dns_message'
Took 0.1019 seconds

如果你想执行Major Compaction,可以使用 major_compact 命令。

bash 复制代码
hbase:011:0> major_compact 'dns_message'
Took 0.0880 seconds

这时Major Compaction会启动后台任务,相关信息可以在Habse WebUI页面上查看

同时查看RegionServer所占资源的情况

通过以上可以说明Major Compaction确实是一个高负载的操作,因此在生产建议关闭自动Major Compaction,在系统负载较低的时候,选择手动进行合并。

相关推荐
Leon-Ning Liu1 分钟前
【真实经验分享】 ORA-600 [qesmaGetTblSeg1]
数据库·oracle
与数据交流的路上4 分钟前
MySQL 优化 -- 相关
数据库·mysql
Rooting++15 分钟前
为什么mysql的表字段的collation会自动变
数据库·mysql
Wch1G0z8A17 分钟前
Google 开源了啥,让 AI Agent 碰数据库不再是定时炸弹
数据库·人工智能·开源
暴躁小师兄数据学院33 分钟前
【AI大数据工程师特训笔记】第14讲:Linux操作系统与shell脚本
大数据·人工智能·笔记
tedcloud12341 分钟前
cc-switch评测:多AI Coding Agent管理工具详解
数据库·人工智能·sql·学习·自动化
土狗TuGou1 小时前
SQL内功笔记 · 第8篇:事务的四大特性与隔离级别
数据库·笔记·后端·sql·mysql·oracle
2601_959986242 小时前
M4Markets:把工具可用性做到位——逻辑梳理与提示整理
大数据·人工智能
Nturmoils2 小时前
一台 2C2G 服务器上的 KingbaseES 安装记录
数据库
薛定猫AI3 小时前
Codex 与 Claude Code 安装配置完全指南
大数据·人工智能·架构