Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何使用boto3将文件上载到Amazon Glacier Deep Archive_Amazon Web Services_Amazon S3_Boto3 - Fatal编程技术网

Amazon web services 如何使用boto3将文件上载到Amazon Glacier Deep Archive

Amazon web services 如何使用boto3将文件上载到Amazon Glacier Deep Archive,amazon-web-services,amazon-s3,boto3,Amazon Web Services,Amazon S3,Boto3,我已经设法将一个文件上传到Glacier,但我想直接上传到Deep Archive。我搜索了文档,但没有发现如何直接将存储类设置为DEEP\u ARCHIVE。您可以使用put\u object(),它有一个StorageClass参数,也可以在指定外部参数时使用upload\u file(): 导入boto3 s3\u client=boto3.client('s3')) s3_client.upload_文件('/tmp/hello.txt',my bucket',hello.txt',Ex

我已经设法将一个文件上传到Glacier,但我想直接上传到Deep Archive。我搜索了文档,但没有发现如何直接将存储类设置为
DEEP\u ARCHIVE

您可以使用
put\u object()
,它有一个
StorageClass
参数,也可以在指定
外部参数时使用
upload\u file()

导入boto3
s3\u client=boto3.client('s3'))
s3_client.upload_文件('/tmp/hello.txt',my bucket',hello.txt',ExtraArgs={'StorageClass':'DEEP_ARCHIVE'})
可在以下位置找到允许的
附加参数


澄清一下:这是上传到AmazonS3,但将存储类设置为Glacier Deep Archive。这与上传到亚马逊冰川服务不同。(现在通过S3存储类更容易使用Glacier)。

您是想上传到Amazon Glacier服务,还是想上传到Amazon S3并设置存储类?(我知道,这是一个令人困惑的术语。)我想把档案上传到亚马逊冰川深度档案。不涉及S3。这是不可能的。“冰川深度档案”是AmazonS3的一个存储类。它不能直接从冰川获取。如果你在Glacier中创建一个档案,它只需按标准的Glacier存储价格收费(目前在美国<代码>$0.004/GB/月
)。感谢你澄清这一点,我仍然对Deep Archive无法通过Glacier获得感到困惑。Glacier没有密钥(对象名称)这类东西。您上传一个文件,并得到一个包含ArchiveID的响应。在
upload\u文件
调用中,我应该设置什么作为键(第三个参数)?我没有尝试过,但是失败了,因为
缺少必需的位置参数
。1“上载到Amazon S3但将存储类设置为Glacier Deep Archive”和2“上载到Amazon Glacier service”之间的实际区别是什么?那么,选项1您可以在S3文件浏览器上看到它吗?当你点击下载时会发生什么?您是否对选项1和选项2收取相同的存储和检索费用?非常感谢。