Amazon S3 Glacier 数据模型 - Simple Storage Service(Amazon S3)Glacier
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon S3 Glacier 数据模型

Amazon S3 Glacier (S3 Glacier) 数据模型核心组件包括文件库和档案。S3 Glacier 是一种基于 REST 的 Web 服务。根据 REST,文件库和档案是资源。此外,S3 Glacier 数据模型还包括作业和通知配置资源。这些资源是对核心资源的补充。

文件库

在 S3 Glacier 中,文件库是用于存储档案的容器。在创建文件库时,您可以指定名称并选择Amazon您想要创建文件库的区域。

每个文件库资源都有唯一的地址。一般格式为:

https://<region-specific endpoint>/<account-id>/vaults/<vaultname>

例如,假设您创建文件库 (examplevault) 在美国西部(俄勒冈)区域。随后,此文件库可以按以下 URI 来编址:

https://glacier.us-west-2.amazonaws.com/111122223333/vaults/examplevault

在该 URI 中,

  • glacier.us-west-2.amazonaws.com标识美国西部(俄勒冈)区域。

  • 111122223333是Amazon Web Services 账户拥有文件库的 ID。

  • vaults指的是拥有的文件库集合。Amazon Web Services 账户.

  • examplevault 标识了文件库集合中的特定文件库。

网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的Amazon Web Services 账户您可以在任何受支持的文件库中Amazon区域。有关受支持的列表Amazon地区,请参阅访问 Amazon S3 Glacier. 在一个区域内,一个账户必须使用唯一的文件库名称。网络 ACL 和安全组都允许 (因此可到达您的实例) 的发起 ping 的Amazon Web Services 账户可以在不同的区域创建名称相同的文件库。

您可以在文件库中存储无限多个档案。根据您的业务或应用程序需求,您可以将这些档案存储在一个或多个文件库中。

S3 Glacier 支持各种文件库操作。请注意,文件库操作是特定于区域的。例如,创建文件库时,您会在特定的区域创建。在请求文件库列表时,您可以从特定的文件库中请求它。Amazon区域,并且结果列表仅包括该特定区域内创建的文件库。

存档

档案可以是任何数据,如照片、视频或文档,并且是 S3 Glacier 中的基本存储单位。每个档案都有唯一的 ID 和可选的描述。请注意,您只能在上传档案的过程中指定可选的描述。S3 Glacier 为档案分配了一个 ID,该 ID 在Amazon存储它的区域。

每个档案都有唯一的地址。一般格式如下:

https://<region-specific endpoint>/<account-id>/vaults/<vault-name>/archives/<archive-id>

以下是存储在的档案的示例 URI:examplevault美国西部(俄勒冈)区域的文件库:

https://glacier.us-west-2.amazonaws.com/111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId

您可以在文件库中存储无限多个档案。

此外,S3 Glacier 数据模型还包括作业和通知配置资源。这些资源是对核心文件库和档案资源的补充。

任务

S3 Glacier 作业可以对档案执行 select 查询、检索档案或获取文件库的清单。当对档案执行查询时,您可以通过提供 SQL 查询和 S3 Glacier 档案对象列表来启动作业。Amazon S3 Glacier Select 会就地运行查询并将输出结果写入 Amazon S3。

S3 Glacier 中,检索档案和文件库清单(档案列表)是异步操作,您首先在其中启动作业,然后在 S3 Glacier 完成作业后下载作业输出。

注意

S3 Glacier 提供了冷存储数据存档解决方案。如果您的应用程序需要一套要求进行实时数据取回的存储解决方案,则您可以考虑使用 Amazon S3。有关更多信息,请参阅 。Amazon Simple Storage Service (Amazon S3).

要启动文件库清单任务,您需要提供文件库名称。Select 和档案检索任务需要文件库名称和档案 ID。您还可以提供可选的任务描述来帮助标识任务。

Select、档案检索和文件库清单任务与文件库相关联。在任何时间点,一个文件库可以同时进行多个任务。当您发送作业请求(启动作业)时,S3 Glacier 会向您返回一个作业 ID,以跟踪该作业。每个任务都会由以下格式的 URI 唯一标识:

https://<region-specific endpoint>/<account-id>/vaults/<vault-name>/jobs/<job-id>

以下是与 examplevault 文件库相关联的任务的示例。

https://glacier.us-west-2.amazonaws.com/111122223333/vaults/examplevault/jobs/HkF9p6o7yjhFx-K3CGl6fuSm6VzW9T7esGQfco8nUXVYwS0jlb5gq1JZ55yHgt5vP54ZShjoQzQVVh7vEXAMPLEjobID

对于每个作业,S3 Glacier 都会保留相关信息,例如,作业类型、描述、创建日期、完成日期和作业状态。您可以获取有关特定任务的信息,也可以获取与某个文件库相关联的所有任务的列表。S3 Glacier 返回的作业列表包括所有正在进行的作业以及最近完成的作业。

通知配置

由于完成作业需要花费时间,因此,S3 Glacier 支持一种通知机制,以便在作业完成时通知您。作业完成时,您可以将文件库配置为将通知发送到 Amazon Simple Notification Service (Amazon SNS) 主题。您可以在通知配置中为每个文件库指定一个 SNS 主题。

S3 Glacier 会将通知配置存储为 JSON 文档。以下是示例文件库通知配置:

{ "Topic": "arn:aws:sns:us-west-2:111122223333:mytopic", "Events": ["ArchiveRetrievalCompleted", "InventoryRetrievalCompleted"] }

请注意,通知配置与文件库相关联;每个文件库都可以有一个通知配置。每个通知配置资源都会由以下格式的 URI 唯一标识:

https://<region-specific endpoint>/<account-id>/vaults/<vault-name>/notification-configuration

Amazon S3 Glacier 支持设置、获取和删除通知配置的操作。如果您删除了通知配置,则针对该文件库的任何数据取回操作完成时,系统都不会发送任何通知。