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

管理 S3 Intelligent-Tiering

S3 Intelligent-Tiering 存储类可在三个低延迟和高吞吐量访问层中自动节省存储成本。它还提供可选的归档功能,对于可在几分钟到几小时内访问的数据,这些归档功能可帮助您获得云中最低的存储成本。S3 Intelligent-Tiering 存储类支持所有 Amazon S3 功能,包括以下功能:

  • S3 清单,用于验证对象的访问层

  • S3 复制,用于将数据复制到任何 Amazon Web Services 区域

  • 使用 S3 Storage Lens 查看存储使用情况和活动指标

  • 服务器端加密,用于保护对象数据

  • S3 对象锁定,用于防止意外删除数据

  • Amazon PrivateLink,用于通过虚拟私有云(VPC)中的私有端点访问 Amazon S3

标识访问层对象存储在哪个 S3 Intelligent-Tiering

要获取对象及其相应元数据的列表,包括 S3 Intelligent-Tiering 访问层,您可以使用 Amazon S3 清单。S3 清单提供旨在列出您的对象及其相应元数据的 CSV、ORC 或 Parquet 输出文件。您可以每天或每周接收 Amazon S3 桶或共享前缀的这些清单报告。(共享前缀是指名称以通用字符串开头的对象。)

查看 S3 Intelligent-Tiering 中对象的归档状态

要在 S3 Intelligent-Tiering 存储类中的对象移到归档访问层或深度归档访问层时接收通知,您可以设置 S3 事件通知。有关更多信息,请参阅 Enabling event notifications(启用事件通知)。

Amazon S3 可以将事件通知发布到 Amazon Simple Notification Service (Amazon SNS) 主题、Amazon Simple Queue Service (Amazon SQS) 队列或 Amazon Lambda 函数。有关更多信息,请参阅Amazon S3 事件通知

以下是 Amazon S3 发送以发布 s3:IntelligentTiering 事件的消息示例。有关详细信息,请参阅 Event message structure(事件消息结构)。

{ "Records":[ { "eventVersion":"2.3", "eventSource":"aws:s3", "awsRegion":"us-west-2", "eventTime":"1970-01-01T00:00:00.000Z", "eventName":"IntelligentTiering", "userIdentity":{ "principalId":"s3.amazonaws.com" }, "requestParameters":{ "sourceIPAddress":"s3.amazonaws.com" }, "responseElements":{ "x-amz-request-id":"C3D13FE58DE4C810", "x-amz-id-2":"FMyUVURIY8/IgAtTv8xRjskZQpcIZ9KG4V5Wp6S7S/JRWeUWerMUE5JgHvANOjpD" }, "s3":{ "s3SchemaVersion":"1.0", "configurationId":"testConfigRule", "bucket":{ "name":"mybucket", "ownerIdentity":{ "principalId":"A3NL1KOZZKExample" }, "arn":"arn:aws:s3:::mybucket" }, "object":{ "key":"HappyFace.jpg", "size":1024, "eTag":"d41d8cd98f00b204e9800998ecf8427e", } }, "intelligentTieringEventData":{ "destinationAccessTier": "ARCHIVE_ACCESS" } } ] }

您还可以使用 HEAD 对象请求查看对象的归档状态。如果以 S3 Intelligent-Tiering 存储类存储对象并且对象当前位于其中一个归档层中,则 HEAD 对象响应显示当前归档层。要显示归档层,请求将使用 x-amz-archive-status 标头。

以下 HEAD 对象请求返回对象(在此情况下为 my-image.jpg)的元数据。

HEAD /my-image.jpg HTTP/1.1 Host: bucket.s3.region.amazonaws.com Date: Wed, 28 Oct 2009 22:32:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:02236Q3V0RonhpaBX5sCYVf1bNRuU=

也可以使用 HEAD 对象请求来监控 restore-object 请求的状态。如果正在进行归档还原,HEAD 对象响应将包括 x-amz-restore 标头。

以下是一个 HEAD 对象响应示例,显示了一个使用 S3 Intelligent-Tiering 归档且还原请求正在进行中的对象。

HTTP/1.1 200 OK x-amz-id-2: FSVaTMjrmBp3Izs1NnwBZeu7M19iI8UbxMbi0A8AirHANJBo+hEftBuiESACOMJp x-amz-request-id: E5CEFCB143EB505A Date: Fri, 13 Nov 2020 00:28:38 GMT Last-Modified: Mon, 15 Oct 2012 21:58:07 GMT ETag: "1accb31fcf202eba0c0f41fa2f09b4d7" x-amz-storage-class: 'INTELLIGENT_TIERING' x-amz-archive-status: 'ARCHIVE_ACCESS' x-amz-restore: 'ongoing-request="true"' x-amz-restore-request-date: 'Fri, 13 Nov 2020 00:20:00 GMT' Accept-Ranges: bytes Content-Type: binary/octet-stream Content-Length: 300 Server: AmazonS3

从 S3 Intelligent-Tiering 归档访问和深度归档访问层恢复对象

要访问 S3 Intelligent-Tiering 归档访问层和深度归档访问层中的对象,您必须启动还原请求,然后等待对象移动到频繁访问层。有关归档对象的更多信息,请参阅使用归档的对象

从归档访问层或深度归档访问层进行还原时,对象会转换回 频繁访问层中。之后,如果对象在连续 30 天仍未被访问,它会自动进入不频繁访问层。然后,在至少连续 90 天无访问后,对象会移入归档访问层。在至少连续 180 天无访问后,对象会移入深度归档访问层。有关更多信息,请参阅S3 Intelligent-Tiering 工作原理

注意

从 S3 Intelligent-Tiering 还原对象时,标准检索或批量检索不收取检索费用。对已恢复的归档对象调用的后续恢复请求将作为 GET 请求计费。有关定价的信息,请参阅 Amazon S3 定价

下表汇总了归档对象检索速度。

存储类或层 加速 标准(带批量操作) 标准(不带批量操作) 批量

S3 Intelligent-Tiering 归档访问

1–5 分钟

分钟 – 5 小时

3–5 小时

5–12 小时

S3 Intelligent-Tiering 深度归档访问

不可用

9 - 12 小时

12 小时内

48 小时内

注意

加速检索是 S3 Intelligent-Tiering 归档访问层的高级功能,按加急请求和检索费率收费。

有关 Amazon S3 定价的信息,请参阅 Amazon S3 定价

您可以使用 Amazon S3 控制台、S3 批量操作、REST API 和 Amazon Command Line Interface(Amazon CLI)还原归档的对象。

使用 Amazon S3 控制台还原对象
  1. 登录到 Amazon Web Services Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 在左侧导航窗格中,选择。在 Buckets(桶)列表中,选择包含您想要还原的对象的桶的名称。

  3. 对象列表中,选中要还原的一个或多个对象旁边的复选框。选择操作,然后选择从 S3 Intelligent-Tiering 归档访问或深度归档访问中还原

  4. 选择 Restore(还原)。

    注意

    S3 Intelligent-Tiering 归档访问层和深度归档访问层中的对象会自动还原到频繁访问层。

要从 S3 Intelligent-Tiering 归档访问层或深度归档访问层中还原对象,请使用 restore-object 命令。

以下示例命令将还原 DOC-EXAMPLE-BUCKET 桶中的对象 dir1/example.obj。要使用此示例命令,请将 user input placeholders 替换为您自己的信息。

aws s3api restore-object --bucket DOC-EXAMPLE-BUCKET --key dir1/example.obj --restore-request '{}'

要监控 restore-object 请求的状态,您可以使用以下示例命令。要使用此示例命令,请将 user input placeholders 替换为您自己的信息。

aws s3api head-object --bucket DOC-EXAMPLE-BUCKET --key dir1/example.obj

有关更多信息,请参阅《Amazon CLI 命令参考》中的 restore-object

注意

与 S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 存储类不同,S3 Intelligent-Tiering 对象的还原请求不接受该 Days 值。

Amazon S3 向您提供了用于启动归档恢复的 API 操作。有关更多信息,请参阅《Amazon Simple Storage Service API 参考》中的 RestoreObject

要使用单个请求还原多个归档对象,您可以使用 S3 批量操作。您为 S3 分批操作提供要操作的对象列表。S3 批量操作调用相应的 API 操作来执行指定的操作。单个分批操作任务可对包含 EB 级数据的数十亿个对象执行指定操作。

要创建批量操作任务,您必须有一个仅包含要还原的对象的清单。您可以使用 S3 清单来创建清单,也可以提供包含必要信息的 CSV 文件。有关更多信息,请参阅指定清单

在创建和运行 S3 批量操作任务之前,您必须向 Amazon S3 授予代表您执行 S3 批量操作的权限。有关所需的权限,请参阅授予 Amazon S3 分批操作的权限

注意

批量操作任务既可以在 S3 Glacier Flexible Retrieval 和 S3 Glacier Deep Archive 存储类对象上运行,也可以在 S3 Intelligent-Tiering 归档访问和深度归档访问存储层对象上运行。批量操作不能在同一个任务中对两种类型的归档对象进行操作。要还原两种类型的对象,必须创建单独的分批操作任务。

有关使用批量操作还原归档对象的更多信息,请参阅使用批量操作还原对象

创建 S3 启动还原对象批量操作任务
  1. 登录到 Amazon Web Services Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 在左侧导航窗格中,选择分批操作

  3. 选择创建任务

  4. 对于 Amazon Web Services 区域,选择要在其中创建任务的 Region (区域)。

  5. 清单格式下,请选择要使用的清单类型。

    • 如果您选择 S3 清单报告,请输入 Amazon S3 作为 CSV 格式清单报告的一部分生成的 manifest.json 对象的路径。如果要使用除最新版本之外的清单版本,请输入 manifest.json 对象的版本 ID。

    • 如果您选择 CSV,请输入 CSV 格式清单对象的路径。清单对象必须遵循控制台中描述的格式。如果要使用除最新版本之外的版本,则可以选择包含清单对象的版本 ID。

  6. 选择 Next(下一步)。

  7. 操作部分,选择还原

  8. 还原部分,对于还原源,选择 Intelligent-Tiering 归档访问层或深度归档访问层。对于检索层,选择要使用的层。

  9. 选择 Next(下一步)。

  10. 配置其他选项页面上,填写以下部分:

    • 其他选项部分,提供任务的描述并指定该任务的优先级编号。编号越大,优先级越高。有关更多信息,请参阅分配任务优先级

    • 完成报告部分中,选择批量操作是否应创建完成报告。有关完成报告的更多信息,请参阅完成报告

    • 权限部分,您必须向 Amazon S3 授予代表您执行批量操作的权限。有关所需的权限,请参阅授予 Amazon S3 分批操作的权限

    • (可选)在任务标签部分,以键值对方式添加标签。有关更多信息,请参阅使用标签控制访问和标记任务

    完成后,选择下一步

  11. Review (审核) 页面上,验证设置。如果需要进行更改,请选择 Previous。否则,请选择创建任务

有关批量操作的更多信息,请参阅使用批量操作还原对象创建 S3 批量操作任务

检查对象的恢复状态

您可以通过 Amazon S3 控制台上的对象详细信息页面、Amazon CLI 或 REST API 检查对象的还原进度。有关更多信息,请参阅检查还原状态和到期日期

通过使用 s3:ObjectRestore:Completed 操作与 Amazon S3 事件通知功能,您可以收到对象还原完成的通知。