[FEATURE] Coordinator supports EstimateDiskSpaceQuotaManager
- 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
Spark Job configures its estimate disk space in its Spark configurations. Uniffle pass the estimate disk space to the coordinator. If the disk space exceeds the limitation of disk space, coordinator will reject the Spark Job.
More code you can see `AbstractAccessChecker` to add a new access checker in the coordinator code.
For Spark client, you can see `DelegationRssShuffleManager`.
### Motivation
Avoid large jobs concurrently running.
### Describe the solution
Add a new access checker class.
### Additional context
_No response_
### Are you willing to submit PR?
- [ ] Yes I am willing to submit a PR!
Contributor guide
Research direction
Read AbstractAccessChecker in the coordinator and DelegationRssShuffleManager on the Spark client to trace how the estimated disk space should travel between them. The work is done when a new coordinator access checker receives that estimate and rejects Spark jobs whose disk space exceeds the configured limitation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spark
- Domain
- backend, distributed-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100