php - Amazon 通过 API 将文件从 S3 移动到 Glacier

标签 php amazon-s3 amazon-glacier

我正在开发一个使用 Amazon S3 和 glacier 进行文件存储的应用程序。要求是我想将文件从 S3 移动到冰川,并在需要时从冰川移回 S3。我的问题是,他们的 PHP API 是否真的可行?

最佳答案

您可以使用 API 定义将文件从 Amazon S3 归档到 Amazon Glacier 的生命周期规则,并且可以使用 API 检索归档到 Glacier 的文件的临时副本。但是,您不能使用 API 告诉 Amazon S3 将特定文件移动到 Glacier。

有两种使用 Amazon Glacier 的方法:

  1. 直接通过 Glacier API,允许您将文件上传到 Glacier 保管库或从中下载文件
  2. 通过 Amazon S3 生命周期规则,将数据从 Amazon S3 存档到 Amazon Glacier

通过 Glacier API 直接连接 允许您存储存档以进行长期存储,通常用作磁带的替代品。通过 Glacier API 存储的数据也必须通过 Glacier API 检索。这通常是通过普通的企业备份软件甚至轻量级产品(如 Cloudberry Backup)完成的。 (Windows) 或 Arq (苹果机)。

使用 Amazon S3 生命周期规则 允许您将数据存储在 Amazon S3 中,然后定义规则来确定何时应将数据存档到 Glacier 以进行长期存储。例如,数据可以在创建后 90 天存档。数据传输受 lifecycle rules 约束。 , 每天批量操作。可以通过 putBucketLifecycle API call 设置规则(在 PHP SDK 中可用),但这仅定义了规则——不可能进行 API 调用来告诉 S3 将特定文件存档到 Glacier。

Amazon S3 有一个 RestoreObject API call (在 PHP SDK 中可用)将从 Glacier 归档的临时数据副本恢复到 S3。请注意,从 Glacier 恢复数据需要 3-5 小时

关于php - Amazon 通过 API 将文件从 S3 移动到 Glacier,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27098020/

相关文章:

python - 将 selenium python 保存到 s3

amazon-web-services - 列出 Amazon Glacier 保管库中具有名称的文件

amazon-web-services - 在 CloudFormation 模板中引用 Glacier 作为资源?

php - 包含、include_once、require 还是 require_once?

php - 查询表格并根据其状态求和数据

php - Laravel DB 失去连接(大概)

ruby-on-rails - CarrierWave stub 请求错误 "Not allowed to upload application/octet-stream files"

c# - 如何使用签名版本 4 生成 AWS S3 预签名 URL

amazon-s3 - 将 Glacier 永久恢复到 S3

php - 为什么我无法在 Android 设备上接收来自 GCM 的消息