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

相关推荐
孪生质数-14 分钟前
2-Visual Studio 2022 NET开发Windows桌面软件并连接SQL Server数据库
数据库·windows·sqlserver·visual studio
T0uken1 小时前
【LLM】MCP(Python):实现 SSE 通信的 Server 和 Client
数据库·python·microsoft
死磕java的孤行者2 小时前
Redis 分布式锁
数据库·redis·分布式
越甲八千2 小时前
pyqt SQL Server 数据库查询-优化2
数据库·windows·pyqt
敢敢のwings3 小时前
C++信号与槽机制自实现
开发语言·数据库·c++
码界筑梦坊3 小时前
基于Spark的抖音数据分析热度预测系统
大数据·信息可视化·数据分析·spark·毕业设计·个性化推荐
杭州杭州杭州4 小时前
MySQL超全笔记
数据库·笔记·mysql
生信学习小达人5 小时前
arcgis10.8 Toolbox中没有找到conversion tools模块
大数据
OpenVINO生态社区6 小时前
【汽车功能安全:软件与硬件缺一不可】
数据库·安全·汽车
Oo_Amy_oO6 小时前
Airflow+Spark/Flink vs. Kettle
大数据·flink·spark