Dshuttle integration Plan
Open
Nobody has claimed this yet.
pai-dev
- Dominant language
- JavaScript
- Stars
- 2.7k
- Forks
- 554
- Avg merge
- 20h 42m
- Merged PRs (30d)
- 14
Description
P0: Integrate with PAI
Code freeze: 9.31 Endgame: 10.12
Deploy
- Make dshuttle as k8s PV/PVC, leverage PAI storage solution. @Binyang2014
1. PAI service config
2. Add alluxio.fuse into /etc/updatedb.conf
3. Expose Dshuttle API to frontend
4. Add dshuttle type in rest-server
5 Refine UI display, need @yiyione help
6. A tool to let customer preload data to dshuttle - Limit/Bound Dshuttle resource usage. @Binyang2014
Memory high usage is cause by grpc flow-control issue, and can be mitigate by change default config. Seems 6GB~8GB for CSI is enough - Doc for Dshuttle configuration, and how to change hived config. @Binyang2014 Qianxi
Robust
- Stable interface to upload data to Dshuttle Qianxi
- Figure out Dshuttle failure pattern (Master should not failure) binxuan
1. Worker down/rejoin when running jobs P0
case: job read all data from Dshuttle/partial from Dshuttle/All from UFS.
Expected behavior:
- User job can continue running without any failure.
- Rejoined worker node can serve the request.
- Missing file will read from UFS
2. Client daemon failure when running jobs P1
- One fuse daemon failed will not affect other job running on same node
3. Worker down/rejoin when preload data P1
Expected behavior:
- Failed worker will not block uploading process
- Rejoined worker will continue serve the task - Test for running jobs with:
1. Consume all data from UFS
2. Consume all data from Dshuttle
3. Partial in Dshuttle
User experience
- Show under-file-system for end user
- Provide e-2-e benchmark binxuan
P1
- Integrate with scheduler to preload data to Dshuttle
- API to show folder load percentage in DShuttle
- Provide a suitable way to preload data, and let user know the data is available in Dshuttle
- Provide a CLI to let user force sync meta data with UFS.
- Cache policy improvement
- Cross job dataLoader optimizer
- Display Dshuttle write type (write through/write back) to end user
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue is a broad Dshuttle integration plan; no files, tests, or entry points are named. Start by checking the remaining P1 items—scheduler preload, folder-load API, preload UX, metadata-sync CLI, cache policy, cross-job optimization, and write-type display—and confirm current status with maintainers. Done requires an agreed, scoped item and validation for its stated behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- grpc, javascript, kubernetes
- Domain
- api, distributed-systems, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100