You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Wellington Chevreuil (Jira)" <ji...@apache.org> on 2022/12/02 15:47:00 UTC
[jira] [Work started] (HBASE-27474) Evict blocks on split/merge; Avoid caching reference/hlinks if compaction is enabled
[ https://issues.apache.org/jira/browse/HBASE-27474?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Work on HBASE-27474 started by Wellington Chevreuil.
----------------------------------------------------
> Evict blocks on split/merge; Avoid caching reference/hlinks if compaction is enabled
> ------------------------------------------------------------------------------------
>
> Key: HBASE-27474
> URL: https://issues.apache.org/jira/browse/HBASE-27474
> Project: HBase
> Issue Type: Improvement
> Affects Versions: 3.0.0-alpha-3
> Reporter: Wellington Chevreuil
> Assignee: Wellington Chevreuil
> Priority: Major
>
> This change aims to improve block cache usage upon splits/merges. On a split/merge event the following main steps happen:
> 1) parent regions are closed; 2) daughters are created and opened with refs/hlinks; 3) Compaction is triggered soon after the daughters get online;
> With "hbase.rs.evictblocksonclose" set to false, we keep all blocks for the closed regions in 1, then will try to load same blocks again on 2 (since we are using the refs/links for the cache key), just to throw it away and cache the compaction resulting file in 3.
> If the block cache is close to its capacity, blocks from the compacted files in 3 will likely miss the cache.
> The proposal here is to always evict blocks for parent regions on a split/merge event, and also avoid caching blocks for refs/hlinks if compactions are enabled.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)