我在同一区域有一个EC2实例和一个S3存储桶.该存储桶包含我的EC2实例定期使用的相当大的(5-20mb)文件.
我想以编程方式在我的EC2实例上打开文件(使用python).像这样:
file_from_s3 = open('http://s3.amazonaws.com/my-bucket-name/my-file-name')
但是使用"http"URL远程访问文件似乎非常低效,当然这意味着每次我想使用它时都要将文件下载到服务器.
我想知道的是,有没有办法可以从我的EC2实例本地访问S3文件,例如:
file_from_s3 = open('s3://my-bucket-name/my-file-name')
我自己找不到解决方案,感谢任何帮助,谢谢.
无论您做什么,该对象都将从S3下载到您的EC2实例的幕后.这无法避免.
如果要将存储桶中的文件视为本地文件,则需要为FUSE安装多个S3文件系统插件中的任何一个(例如:s3fs-fuse).或者,您可以使用boto通过python代码轻松访问S3对象.