apache / apache/incubator-graphar

Implement an LRU cache mechanism to the reader in the C++ library

Open
#80 0 comments 0 reactions 0 assignees View on GitHub
improvement
Dominant language
C++
Stars
373
Forks
93
Avg merge
7d 21h
Merged PRs (30d)
7

Description

**Is your feature request related to a problem? Please describe.**
Least Recently Used (LRU) is a common caching strategy. To improve the performance of reading GAR chunks, this strategy could be applied in the implementation of the reader in the C++ library of GraphAr.

**Describe the solution you'd like**
Applying the LRU mechanism in the implementation of reader, for caching GAR chunks in the memory. And comparing the performance gap with disabling this mechanism using representative applications.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.

Contributor guide

Open the contributing guide

Research direction

Start by locating the C++ reader implementation and the path that reads GAR chunks. Determine how an LRU cache would fit there, then compare representative applications with caching enabled and disabled. Done means the reader uses the cache and the performance difference is documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.