gpt4 book ai didi

amazon-web-services - 如何从S3中的zip存档中提取文件

转载 作者:行者123 更新时间:2023-12-03 21:20:53 29 4
gpt4 key购买 nike

我在某个位置的S3中上传了一个zip存档(例如/foo/bar.zip)
我想提取bar.zip中的值并将其放在/ foo下,而无需下载或重新上传提取的文件。我该怎么做,这样S3就像文件系统一样

最佳答案

S3并非真正设计成允许这样做的。通常,您将必须下载文件,对其进行处理并上传提取的文件。

但是,可能有一些选择:


您可以使用s3fsFUSE将S3存储桶安装为本地文件系统(请参见articlegithub site)。这仍然需要下载和上传文件,但是将这些操作隐藏在文件系统界面的后面。
如果您主要担心避免将数据从AWS下载到本地计算机,那么当然可以将数据下载到远程EC2 instance上,并在有或没有s3fs的情况下在那里进行工作。这会将数据保留在Amazon数据中心内。
您可以使用AWS Lambda对文件执行远程操作,而无需将其下载到本地计算机上。


您将需要创建,打包和上传用node.js编写的小程序,以访问,解压缩和上传文件。该处理将在幕后在AWS基础设施上进行,因此您无需将任何文件下载到您自己的计算机上。请参见FAQs

最后,您需要找到一种触发该代码的方法-通常在Lambda中,这是通过将zip文件上传到S3来自动触发的。如果文件已经存在,则可能需要通过AWS API提供的invoke-async命令手动触发它。请参阅AWS Lambda walkthroughsAPI docs

但是,这是避免下载的一种精心设计的方法,并且只有在您需要处理大量zip文件时才值得这样做!另请注意(截至2018年10月)Lambda函数限制为15分钟maximum durationdefault timeout为3秒),因此如果文件很大,可能会用完时间-但由于/tmp中的暂存空间为限制为500MB,您的文件大小也受到限制。

关于amazon-web-services - 如何从S3中的zip存档中提取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28291466/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com