Glacier
开发人员指南 (API 版本 2012-06-01)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

在 Glacier 中下载文件库清单

您向您的文件库上传第一个档案后,Glacier 会自动创建文件库清单,然后大约每天更新它一次。Glacier 创建第一份清单后,通常需要经过半天(最多一天)时间,该清单才可供检索。您可以通过以下流程(该流程分为两个步骤)从 Glacier 检索文件库清单:

  1. 使用 启动作业(POST 作业) 操作启动清单检索任务。

    重要

    数据检索策略可能导致您启动检索作业的请求失败,并发生 PolicyEnforcedException 异常。有关数据检索策略的更多信息,请参阅Glacier 数据检索策略。有关 PolicyEnforcedException 异常的更多信息,请参阅错误响应

  2. 在任务完成后,使用 获取任务输出(获取输出) 操作下载字节。

例如,取回档案或文件库清单的操作要求您首先启动取回任务。任务请求会异步执行。当您启动检索任务时,Glacier 会创建任务并在响应中返回任务 ID。Glacier 完成任务时,您可以获取任务输出(档案字节或文件库清单数据)。

任务必须先完成,然后,您才能获取其输出。要确定任务的状态,您有以下选择:

  • 等待任务完成通知 – 您可以指定 Amazon Simple Notification Service (Amazon SNS) 主题;完成任务后,Glacier 可以向其发布通知。您可以使用以下方法指定 Amazon SNS 主题:

    • 为每个任务指定 Amazon SNS 主题。

      启动任务时,您可以选择性地指定 Amazon SNS 主题。

    • 设置文件库的通知配置。

      您可以设置文件库的特定事件的通知配置(请参阅“在 Glacier 中配置文件库通知”)。在特定事件发生的任何时间,Glacier 都会向指定的 SNS 主题发送消息。

    如果您设置了文件库的通知配置,并且在启动任务时也指定了 Amazon SNS 主题,则 Glacier 会向这两个主题发送任务完成消息。

    您可以将 SNS 主题配置为通过电子邮件通知您或者将消息存储在应用程序可以轮询的 Amazon Simple Queue Service (Amazon SQS) 中。当该队列中出现消息时,您可以检查任务是否已成功完成,然后下载任务输出。

  • 显式请求任务信息 – Glacier 也提供了描述任务操作 (描述任务(获取任务 ID)),该操作可让您轮询任务信息。您可以定期发送此请求,以获取任务信息。但是,使用 Amazon SNS 通知才是推荐的选择。

注意

您通过 SNS 通知获取的信息与通过调用描述任务获取的信息相同。

关于清单

从您第一次将档案上传到文件库的日期开始,Glacier 大约每天都会更新一次文件库清单。如果在上次编制清单后没有对文件库执行过添加或删除档案的操作,则不会更新清单日期。当您为文件库清单启动任务时,Glacier 返回其最近一次生成的清单,该清单是时间点快照,而不是实时数据。请注意,Glacier 为文件库创建第一份清单后,通常需要经过半天(最多一天)时间,该清单才可用于检索操作。

您可能没有发现为每个档案上传操作取回文件库清单有什么好处。但是,假设您在客户端维护数据库,且该客户端关联了您上传到 Glacier 的档案的元数据。此时,您可能会发现,文件库清单对于根据需要将您数据库中的信息与实际文件库清单进行协调很有用。您可以通过筛选档案创建日期或设置限制,来限制检索的清单项目数。有关限制清单检索的更多信息,请参阅确定清单检索范围

清单可以按两种格式 (逗号分隔值 (CSV) 或 JSON) 返回。启动清单任务时,您可以选择性地指定格式。默认格式为 JSON。有关清单任务输出中返回的数据字段的更多信息,请参阅获取任务输出 API响应正文

本页内容: