一. 什么是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,可以执行下面的命令:
hbase:010:0> compact 'dns_message'
Took 0.1019 seconds
如果你想执行Major Compaction,可以使用 major_compact 命令。
hbase:011:

最低0.47元/天 解锁文章
700

被折叠的 条评论
为什么被折叠?



