在Amazon s3中下载批量对象

时间:2015-11-19 10:03:12

标签: java amazon-web-services amazon-s3 cloud aws-java-sdk

在Amazon S3中,我在该多个子文件夹下创建了1个桶 <bucket_name>/<year>/<month>/<day>/files(即对象)。

我希望功能可以根据要求我按年/月/日下载批量对象,所有文件都是zip。

Amazon Java SDK有什么方法可以做到这一点吗?

2 个答案:

答案 0 :(得分:2)

传输管理器库提供了MultipleFileDownload方法,提供整个虚拟目录的多个文件下载。但是,内容没有压缩。

请参阅:MultipleFileDownload javadoc

由于您的对象按年/月/日显示在目录中,因此您可以使用此方法下载特定路径中的所有文件。但是,文件不会被压缩。

答案 1 :(得分:0)

您可以使用mc工具实现它: mc cp -r https://bucketName.s3.amazonaws.com/<year>/<month>/<day> backupdir 它从S3复制到本地目录backup

然后您可以通过以下方式压缩backup目录: zip backupdir.zip -r backupdir