[FEATURE] Cache index files on the server side
- Dominant language
- Java
- Stars
- 454
- Forks
- 172
- Avg merge
- 5d 17h
- Merged PRs (30d)
- 5
Description
### Code of Conduct
- [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
### Search before asking
- [X] I have searched in the [issues](https://github.com/apache/incubator-uniffle/issues?q=is%3Aissue) and found no similar issues.
### Describe the feature
If we use AQE, index files will be read many times. So we should cache it in memory.
### Motivation
For better performance and lower disk io.
### Describe the solution
1. Cache it. Free discussion on specific details.
2. Filter index data before return to the clients.
### Additional context
_No response_
### Are you willing to submit PR?
- [ ] Yes I am willing to submit a PR!
Contributor guide
Research direction
Start by tracing how the server reads index files for AQE requests and how index data is returned to clients. The issue proposes in-memory caching and filtering before responses, but leaves the cache design and other specifics open; done criteria need to be established before implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spark
- Domain
- backend, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100