MST

星途 面试题库

面试题:Hbase中HBase Compaction触发时机的基础理解

请简要描述HBase Compaction常见的两种触发时机,即Minor Compaction和Major Compaction通常在什么情况下会被触发?
35.0万 热度难度
数据库Hbase

知识考点

AI 面试

面试题答案

一键面试

Minor Compaction触发时机

  1. 文件数量阈值:当某个Region内的Store下的HFile数量达到一定阈值时,会触发Minor Compaction。这个阈值可通过配置参数进行调整,默认情况下该阈值相对较小。比如在某些场景下,当Store中的HFile数量达到3个(可配置),就会启动Minor Compaction。它会将较小的一些HFile合并成一个较大的HFile,以减少HFile的总数量,从而提升查询性能。

Major Compaction触发时机

  1. 时间周期:默认情况下,Major Compaction会按照一定的时间周期触发,通常是7天(可配置)。到了设定的周期时间,就会对Region内的所有Store进行Major Compaction。它会将该Region下Store中的所有HFile进行合并,生成一个新的HFile,同时清理掉已标记删除的数据和过期的版本数据。
  2. 手动触发:管理员也可以根据实际需求手动触发Major Compaction,例如在需要彻底清理无效数据、优化存储布局等情况下,通过HBase的管理命令或者API来执行Major Compaction操作。