[ 
https://issues.apache.org/jira/browse/HBASE-30021?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vladimir Rodionov updated HBASE-30021:
--------------------------------------
    Description: 
Description

Introduce CacheAccessService as a unified entry point for block cache 
interactions in HBase.

CacheAccessService abstracts cache operations currently performed directly via 
BlockCache, including:
        •       block lookup on the read path
        •       cache population on read miss
        •       cache-on-write from HFile writer
        •       prefetch and compaction-related cache population
        •       block invalidation (e.g., by HFile)

This abstraction decouples HBase read/write paths from the underlying cache 
implementation and prepares the system for a pluggable cache architecture.

Scope
        •       Define the CacheAccessService interface
        •       Introduce request/write/invalidation context objects as needed
        •       Provide an initial implementation that delegates to the 
existing BlockCache
        •       No migration of call sites in this ticket

Notes
        •       No behavior change intended
        •       Existing BlockCache implementations (LruBlockCache, 
BucketCache, CombinedBlockCache) remain unchanged
        •       This is an intermediate step toward replacing direct BlockCache 
usage with a layered architecture (CacheAccessService → CacheTopology → 
CacheEngine)


  was:
Introduce CacheAccessService as a unified entry point for:
        •       cache lookup (read path)
        •       cache population (read miss, write path, prefetch, compaction)

Refactor:
        •       HFileReaderImpl
        •       write path components (HFile writer, bloom/index writers)

Goal:
        •       remove topology-specific logic from read/write paths
        •       centralize cache interactions

No behavior change expected.



> Introduce CacheAccessService abstraction
> ----------------------------------------
>
>                 Key: HBASE-30021
>                 URL: https://issues.apache.org/jira/browse/HBASE-30021
>             Project: HBase
>          Issue Type: New Feature
>          Components: BlockCache, Performance
>            Reporter: Vladimir Rodionov
>            Assignee: Vladimir Rodionov
>            Priority: Major
>
> Description
> Introduce CacheAccessService as a unified entry point for block cache 
> interactions in HBase.
> CacheAccessService abstracts cache operations currently performed directly 
> via BlockCache, including:
>       •       block lookup on the read path
>       •       cache population on read miss
>       •       cache-on-write from HFile writer
>       •       prefetch and compaction-related cache population
>       •       block invalidation (e.g., by HFile)
> This abstraction decouples HBase read/write paths from the underlying cache 
> implementation and prepares the system for a pluggable cache architecture.
> Scope
>       •       Define the CacheAccessService interface
>       •       Introduce request/write/invalidation context objects as needed
>       •       Provide an initial implementation that delegates to the 
> existing BlockCache
>       •       No migration of call sites in this ticket
> Notes
>       •       No behavior change intended
>       •       Existing BlockCache implementations (LruBlockCache, 
> BucketCache, CombinedBlockCache) remain unchanged
>       •       This is an intermediate step toward replacing direct BlockCache 
> usage with a layered architecture (CacheAccessService → CacheTopology → 
> CacheEngine)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to