33 releases (19 breaking)

0.20.0-alpha.3 Jun 10, 2022
0.19.0 Jun 3, 2022
0.13.2 Mar 22, 2022
0.12.0 Dec 24, 2021
0.11.1 Oct 20, 2021

#5 in #rusoto

Apache-2.0/MIT

670KB
16K SLoC

CONcurrent DOWnloads from AWS S3

WARNING! Not yet for production usage

Download speed from S3 can be significantly improved by downloading parts of the file concurrently. This crate does exactly that.

Unlike e.g. the AWS Java SDK this library does not download the parts as upladed but ranges.

License

condow is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

License: Apache-2.0/MIT


lib.rs:

CONcurrent DOWnloads from AWS S3

Download speed from S3 can be significantly improved by downloading parts of the file concurrently. This crate does exactly that.

Unlike e.g. the AWS Java SDK this library does not download the parts as uploaded but ranges.


use condow_rusoto::*;
use condow_rusoto::config::Config;

let client = S3ClientWrapper::new(Region::default());
let condow = client.condow(Config::default()).unwrap();

let s3_obj = Bucket::new("my_bucket").object("my_object");

let stream = condow.blob().at(s3_obj).range(23..46).download().await.unwrap();
let downloaded_bytes: Vec<u8> = stream.into_vec().await.unwrap();

Dependencies

~11–24MB
~354K SLoC