是否仅在主要压缩期间在 Hbase 中删除已删除的键值
Is it true that deleted key-value are removed in Hbase only during major compaction
根据this,hbase仅在主要压缩期间删除重复或删除的键值。
In a major compaction, deleted key/values are removed, this new file
doesn’t contain the tombstone markers and all the duplicate key/values
(replace value operations) are removed.
- Major compaction 将所有 HFiles 合并为一个大的 HFile,而 minor compaction select 合并一些 HFiles。这是正确的理解吗?
- 如果主要压缩可以删除重复键,为什么不进行次要压缩?流程不是基本一样吗?
要理解这一点,我们首先要了解删除标记(tombstone)何时添加,何时删除以及它们的更新如何影响Hbase中的数据。关于 Hbase 如何决定何时执行次要和主要压缩,有一个特定的算法。请检查this,它清楚地解释了带有指标的整个过程。快乐学习和编码:)
主要压缩是一个非常昂贵和耗时的操作,可以将其视为一个非常精细的碎片整理过程。它必须检查每个键值、它的类型、列中的最大版本数、生存时间。它还根据配置规则和环境参数执行区域拆分。默认情况下,Major 压缩通常是禁用的,由外部触发。次要压缩的范围很窄,它选择的文件更少(更小)并且对延迟的影响要小得多。
根据this,hbase仅在主要压缩期间删除重复或删除的键值。
In a major compaction, deleted key/values are removed, this new file doesn’t contain the tombstone markers and all the duplicate key/values (replace value operations) are removed.
- Major compaction 将所有 HFiles 合并为一个大的 HFile,而 minor compaction select 合并一些 HFiles。这是正确的理解吗?
- 如果主要压缩可以删除重复键,为什么不进行次要压缩?流程不是基本一样吗?
要理解这一点,我们首先要了解删除标记(tombstone)何时添加,何时删除以及它们的更新如何影响Hbase中的数据。关于 Hbase 如何决定何时执行次要和主要压缩,有一个特定的算法。请检查this,它清楚地解释了带有指标的整个过程。快乐学习和编码:)
主要压缩是一个非常昂贵和耗时的操作,可以将其视为一个非常精细的碎片整理过程。它必须检查每个键值、它的类型、列中的最大版本数、生存时间。它还根据配置规则和环境参数执行区域拆分。默认情况下,Major 压缩通常是禁用的,由外部触发。次要压缩的范围很窄,它选择的文件更少(更小)并且对延迟的影响要小得多。