从S3存储桶下载百万个文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从S3存储桶下载百万个文件相关的知识,希望对你有一定的参考价值。

我在S3存储桶上的不同文件夹中有数百万个文件。

文件非常小。我希望下载名为VER1的文件夹下的所有文件。文件夹VER1包含许多子文件夹,我希望下载VER1所有子文件夹下的所有百万文件。

(例如VER1-> sub1-> file1.txtVER1-> sub1 - > subsub1 - > file2.text等)

下载所有文件的最快方法是什么?

使用s3 cps3 sync

有没有办法并行下载该文件夹下的所有文件?

答案

使用AWS Command-Line Interface (CLI)

aws s3 sync s3://bucket/VER1 [name-of-local-directory]

根据我的经验,它将并行下载,但不一定会使用全带宽,因为每个对象都有很多开销。 (对于大型对象来说效率更高,因为开销更少。)

aws s3 sync可能存在大量文件问题。你必须尝试看它是否有效。

如果你真的想要完整的性能,你可以编写自己的代码,以大量的并行方式下载,但是在你编写和测试这样一个程序的时候可能会节省时间。

另一种选择是使用aws s3 sync下载到Amazon EC2实例,然后压缩文件并简单地下载zip文件。这将减少带宽需求。

以上是关于从S3存储桶下载百万个文件的主要内容,如果未能解决你的问题,请参考以下文章

将图像从 S3 存储桶下载到 Lambda 临时文件夹 (Node.js)

从 s3 到 Redshift 的数据复制:清单与我需要下载的文件位于不同的存储桶中

从 S3 存储桶下载模式匹配条目

从 S3 存储桶下载模式匹配条目

使用boto3,从整个文件夹或文件从一个s3存储桶复制到同一区域的另一个文件夹时,如何提供访问密钥和秘密访问密钥?

访问 aws s3 公共存储桶