[
https://issues.apache.org/jira/browse/HBASE-30025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vladimir Rodionov updated HBASE-30025:
--------------------------------------
Description:
h2. Description
Add support for an explicit *TieredInclusiveTopology* as an alternative cache
topology for coordinating L1 and L2 cache tiers.
In an inclusive topology, blocks present in the upper tier (L1) are also
retained in the lower tier (L2). This differs from the existing exclusive
behavior (modeled by *TieredExclusiveTopology*), where a block resides in only
one tier at a time.
h3. Scope
* Introduce *TieredInclusiveTopology* implementing L1/L2 coordination with
inclusive semantics
* Implement lookup behavior:
** check L1 first, then L2 on miss
* Implement promotion behavior:
** on L2 hit, copy block into L1 while retaining it in L2
* Define eviction behavior:
** eviction from L1 does not affect L2
* Integrate with existing topology abstraction (*CacheTopology*)
h3. Notes
* No change to default behavior — *TieredExclusiveTopology* remains the default
configuration
* Existing cache implementations (*LruBlockCache*, *BucketCache*) remain
unchanged
* This topology is introduced primarily for flexibility and experimentation
* Enables evaluation of different trade-offs between:
** memory efficiency (exclusive)
** simplicity and stability (inclusive)
was:
Description
Add support for an explicit TieredInclusiveTopology as an alternative cache
topology for coordinating L1 and L2 cache tiers.
In an inclusive topology, blocks present in the upper tier (L1) are also
retained in the lower tier (L2). This differs from the existing exclusive
behavior (modeled by TieredExclusiveTopology), where a block resides in only
one tier at a time.
Scope
• Introduce TieredInclusiveTopology implementing L1/L2
coordination with inclusive semantics
• Implement lookup behavior:
• check L1 first, then L2 on miss
• Implement promotion behavior:
• on L2 hit, copy block into L1 while retaining it in L2
• Define eviction behavior:
• eviction from L1 does not affect L2
• Integrate with existing topology abstraction (CacheTopology)
Notes
• No change to default behavior — TieredExclusiveTopology remains
the default configuration
• Existing cache implementations (LruBlockCache, BucketCache)
remain unchanged
• This topology is introduced primarily for flexibility and
experimentation
• Enables evaluation of different trade-offs between memory
efficiency (exclusive) and simplicity/stability (inclusive)
> Add TieredInclusiveTopology support
> -----------------------------------
>
> Key: HBASE-30025
> URL: https://issues.apache.org/jira/browse/HBASE-30025
> Project: HBase
> Issue Type: New Feature
> Components: BlockCache, Performance
> Reporter: Vladimir Rodionov
> Assignee: Vladimir Rodionov
> Priority: Major
>
> h2. Description
> Add support for an explicit *TieredInclusiveTopology* as an alternative cache
> topology for coordinating L1 and L2 cache tiers.
> In an inclusive topology, blocks present in the upper tier (L1) are also
> retained in the lower tier (L2). This differs from the existing exclusive
> behavior (modeled by *TieredExclusiveTopology*), where a block resides in
> only one tier at a time.
> h3. Scope
> * Introduce *TieredInclusiveTopology* implementing L1/L2 coordination with
> inclusive semantics
> * Implement lookup behavior:
> ** check L1 first, then L2 on miss
> * Implement promotion behavior:
> ** on L2 hit, copy block into L1 while retaining it in L2
> * Define eviction behavior:
> ** eviction from L1 does not affect L2
> * Integrate with existing topology abstraction (*CacheTopology*)
> h3. Notes
> * No change to default behavior — *TieredExclusiveTopology* remains the
> default configuration
> * Existing cache implementations (*LruBlockCache*, *BucketCache*) remain
> unchanged
> * This topology is introduced primarily for flexibility and experimentation
> * Enables evaluation of different trade-offs between:
> ** memory efficiency (exclusive)
> ** simplicity and stability (inclusive)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)