Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for multipart download for S3 Transfer Manager #5934

Open
2 tasks
RanVaknin opened this issue Mar 21, 2024 · 1 comment
Open
2 tasks

Add support for multipart download for S3 Transfer Manager #5934

RanVaknin opened this issue Mar 21, 2024 · 1 comment
Labels
feature-request New feature or enhancement. May require GitHub community feedback. p3 This is a minor priority issue queued This issues is on the AWS team's backlog

Comments

@RanVaknin
Copy link
Contributor

Describe the feature

Currently the JS SDK transfer manager package (@aws-sdk/lib-storage) only supports an upload function (based on PutObject). Ideally we should add support for an download functionality that can take advantage of the range option in getObject to achieve mutlipart functionality.

Use Case

This feature is crucial for applications that need to download large files or datasets from S3. Currently, developers must implement custom solutions to handle large file downloads, which can be error-prone and inefficient. Having a built-in download manager would simplify this process, making it more reliable and performant.

Proposed Solution

Use the existing design and functionality of the Go SDK v2 download manager as a reference. Implement a similar Downloader class in the JS SDK that supports multipart downloads, concurrency, error handling, and retry mechanisms. The downloader should allow configuring part size, concurrency level, and retry counts.

Other Information

No response

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

SDK version used

N/A

Environment details (OS name and version, etc.)

N/A

@RanVaknin RanVaknin added feature-request New feature or enhancement. May require GitHub community feedback. p3 This is a minor priority issue queued This issues is on the AWS team's backlog labels Mar 21, 2024
@giovanni-bertoncelli
Copy link

That would be a great functionality! The new Download class should probably wrap this implementation: https://docs.aws.amazon.com/AmazonS3/latest/userguide/example_s3_Scenario_UsingLargeFiles_section.html (at download large files)?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request New feature or enhancement. May require GitHub community feedback. p3 This is a minor priority issue queued This issues is on the AWS team's backlog
Projects
None yet
Development

No branches or pull requests

2 participants