从 Amazon S3 导出任务 - Amazon Snowball Edge 开发人员指南
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

从 Amazon S3 导出任务

注意

目前不支持标签和元数据,换句话说,从 S3 存储桶导出对象时,所有标签和元数据都将被删除。

导出任务的数据源是一个或多个 Amazon S3 存储桶。将任务部分的数据从 Amazon S3 移动到Amazon Snowball Edge设备后,您可以下载任务报告。此报告将提醒您无法传输到设备的所有对象。您可以在任务的成功日志和失败日志中查找更多信息。

您可以为每个导出任务导出任意数量的对象,使用尽可能多的设备完成传输。导出任务任务部件的每台Amazon Snowball Edge设备都依次交付,后续设备将在前一个任务部件进入 “正在运输到”Amazon 状态后发货您。

当您使用 Amazon S3 接口或 NFS 装载点将对象从设备复制到本地数据目标时,这些对象将另存为文件。如果将对象复制到已包含文件的位置,则所有名称相同的现有文件都将被覆盖。导出任务类型也具有本地存储和计算功能。此功能使用文件接口或 Amazon S3 接口读取和写入数据,并根据Amazon Snowball Edge设备上本地运行的 Amazon S3 PUT 对象 API 操作触发 Lambda 函数。

Amazon 收到寄回的设备后,我们将按照 NIST 800-88 标准对其执行完全擦除操作。

重要

在您确认整个任务的所有内容均已复制到本地数据目标之前,请勿更改、更新或删除导出的 Amazon S3 对象。

创建导出任务时,您可以导出整个 Amazon S3 存储桶或特定范围的对象密钥。

使用导出范围

Amazon Snow 系列管理控制台或使用任务管理 API 创建导出任务时,您可以导出整个 Amazon S3 存储桶或特定范围的对象密钥。对象键名称唯一标识存储桶中的对象。如果导出特定范围的对象键,您可以通过提供包含范围的起始值和/或包含范围的结束值,来定义范围的大小。

范围按 UTF-8 二进制排序。UTF-8 二进制数据按下列方式排序:

  • 数字 0—9 出现在大写和小写英文字符之前。

  • 大写英文字符在所有小写英文字符之前。

  • 根据大写英文字符和数字排序时,小写英文字符在最后。

  • 在其他字符集内排序特殊字符。

有关 UTF-8 细节的更多信息,请参阅维基百科上的 UTF-8

导出范围示例

假设您有一个包含以下对象和前缀的存储桶,按 UTF-8 二进制顺序排序:

  • 01

  • Aardvark

  • Aardwolf

  • Aasvogel/apple

  • aasVogel/arrow/Object1

  • aasvogel/arrow/Object2

  • Aasvogel/banana

  • aasVogel/Banker/Object1

  • aasVogel/Banker/Object2

  • Aasvogel/cherry

  • Banana

  • Car

指定范围开始 指定范围结束 要导出的范围内的对象
(无) (无) 存储桶中的所有对象
(无) Aasvogel

01

Aardvark

Aardwolf

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

aasVogel/Banker/Object1

aasVogel/Banker/Object2

Aasvogel/cherry

(无) Aasvogel/banana

01

Aardvark

Aardwolf

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

Aasvogel (无)

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

aasVogel/Banker/Object1

aasVogel/Banker/Object2

Aasvogel/cherry

Banana

Car

Aardwolf (无)

Aardwolf

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

aasVogel/Banker/Object1

aasVogel/Banker/Object2

Aasvogel/cherry

Banana

Car

Aar (无)

Aardvark

Aardwolf

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

aasVogel/Banker/Object1

aasVogel/Banker/Object2

Aasvogel/cherry

Banana

Car

car (无)

将不导出任何对象,且在您尝试创建任务时,会收到错误消息。请注意,根据 UTF-8 二进制值,汽车在 Car 下方排序。

Aar Aarrr

Aardvark

Aardwolf

aasvogel/Arrow

aasvogel/arrox

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/apple Aasvogel/banana

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

Aasvogel/apple aasVogel/Banker

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

aasVogel/Banker/Object1

aasVogel/Banker/Object2

Aasvogel/apple Aasvogel/cherry

Aasvogel/apple

aasVogel/arrow/Object1

aasvogel/arrow/Object2

Aasvogel/banana

aasVogel/Banker/Object1

aasVogel/Banker/Object2

Aasvogel/cherry

出口工作最佳实践

  • 确保数据在 Amazon S3 中,在订购任务之前对小文件进行批处理

  • 如果您的存储桶中有数百万个对象,请确保在导出任务定义中指定密钥范围

  • 确保开始键标记和结束键标记不相同

  • 更新对象键以删除名称中的斜杠,因为名称中带有尾部斜杠(/或\)的对象不会传输到 Snowball Edge