nydus
nydus copied to clipboard
[WIP] Nydusd: introduce runtime streaming prefetching
Relevant Issue (if applicable)
If there are Issues related to this PullRequest, please list it.
Details
Streaming prefetching allows to prefetch a blob by a single prefetching request, where the request is streaming processed the partially fetched data is processed immediately.
As a result, the number of requests for starting a Wordpress container can be reduced from~115 requests to ~36 requests.
It requires build-time prefetching to pre-organize the chunks.
Still working in progress.
Types of changes
What types of changes does your PullRequest introduce? Put an x
in all the boxes that apply:
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] Documentation Update (if none of the other choices apply)
Checklist
Go over all the following points, and put an x
in all the boxes that apply.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
Codecov Report
Attention: 919 lines
in your changes are missing coverage. Please review.
Comparison is base (
5f26f8e
) 61.38% compared to head (945d411
) 60.17%. Report is 2 commits behind head on master.
Additional details and impacted files
@@ Coverage Diff @@
## master #1538 +/- ##
==========================================
- Coverage 61.38% 60.17% -1.22%
==========================================
Files 144 145 +1
Lines 46962 47959 +997
Branches 44498 45495 +997
==========================================
+ Hits 28828 28858 +30
- Misses 16650 17612 +962
- Partials 1484 1489 +5
Files | Coverage Δ | |
---|---|---|
rafs/src/metadata/direct_v6.rs | 44.26% <ø> (ø) |
|
storage/src/cache/filecache/mod.rs | 67.83% <85.71%> (+0.33%) |
:arrow_up: |
storage/src/cache/fscache/mod.rs | 76.50% <85.71%> (+0.11%) |
:arrow_up: |
storage/src/cache/state/mod.rs | 87.83% <33.33%> (-2.44%) |
:arrow_down: |
storage/src/meta/chunk_info_v1.rs | 95.17% <0.00%> (-0.74%) |
:arrow_down: |
rafs/src/fs.rs | 31.15% <86.66%> (-3.39%) |
:arrow_down: |
storage/src/meta/chunk_info_v2.rs | 87.77% <0.00%> (-1.31%) |
:arrow_down: |
storage/src/cache/dummycache.rs | 90.90% <6.66%> (-3.64%) |
:arrow_down: |
storage/src/cache/state/blob_state_map.rs | 75.41% <0.00%> (-1.79%) |
:arrow_down: |
storage/src/meta/mod.rs | 72.47% <12.50%> (+0.08%) |
:arrow_up: |
... and 8 more |