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,在系统负载较低的时候,选择手动进行合并。

相关推荐
熏鱼的小迷弟Liu25 分钟前
【Redis】Redis Zset实现原理:跳表+哈希表的精妙设计
数据库·redis·散列表
望获linux42 分钟前
智能清洁机器人中的实时操作系统应用研究
大数据·linux·服务器·人工智能·机器人·操作系统
淋一遍下雨天1 小时前
Spark Streaming核心编程总结(四)
java·开发语言·数据库
zru_96021 小时前
Windows 安装 MongoDB 教程
数据库·mongodb
数据与后端架构提升之路2 小时前
深度解析如何将图像帧和音频片段特征高效存储到向量数据库 Milvus
数据库·opencv·音视频
三个蔡2 小时前
Java求职者面试:从Spring Boot到微服务的技术深度探索
java·大数据·spring boot·微服务·kubernetes
20242817李臻3 小时前
李臻20242817_安全文件传输系统项目报告_第9周
数据库·安全
小白考证进阶中3 小时前
0基础可以考MySQL OCP么?备考时间需要多久?
数据库·mysql·开闭原则
观无3 小时前
Redis远程链接应用案例
数据库·redis·缓存·c#
星星点点洲3 小时前
【缓存与数据库结合方案】伪从技术 vs 直接同步/MQ方案的深度对比
数据库·缓存