

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

# 了解 Snowball Edge 作业
<a name="jobs"></a>

中的*任务* AWS Snowball Edge 是一个离散的工作单元，是在控制台或任务管理 API 中创建任务时定义的。该 AWS Snowball Edge 设备有三种不同的任务类型，它们都能够实现本地存储和计算功能。此功能使用 NFS 接口或 Amazon S3 接口来读取和写入数据。它会根据在设备上本地运行的 Amazon S3 PUT 对象 API 操作来触发 Lambda 函数。 AWS Snowball Edge 
+ [使用 Snowball Edge 设备将数据导入 Amazon S3 的作业](importtype.md)— 将 210 TB 或更少的本地数据复制到一台设备上，然后转移到 Amazon S3 中。对于导入任务，Snowball 设备和任务有关系。 one-to-one每个作业都恰好有一个与其相关联的设备。如果您需要导入更多数据，您可以创建新的导入作业或者克隆现有作业。当您返回此作业类型的设备时，设备上的数据会导入到 Amazon S3 中。
+ [使用 Snowball Edge 设备从 Amazon S3 导出数据的作业](exporttype.md)— 传输任意数量的数据（位于 Amazon S3 中），复制到任意数量的 Snowball Edge 设备上，然后一次将一 AWS Snowball Edge 台设备移动到本地数据目标。在创建导出作业时，此作业将拆分为多个部分。每个任务部分的大小不超过 210 TB，并且每个任务部分恰好有一个与之关联的 AWS Snowball Edge 设备。当您返回此作业类型的设备时，设备上的数据会被擦除。
+ [有关使用 Snowball Edge 设备提供本地计算和存储功能的信息](computetype.md)— 这些任务涉及集群中使用的一 AWS Snowball Edge 台或多台设备。这些作业不从其存储桶中的数据开始（这一点与导出作业不同）且在最后不会将数据导入 Amazon S3（这一点与导入作业不同）。当您返回此作业类型的设备时，设备上的数据会被擦除。使用此作业类型时，您依然可以选择创建设备集群。集群可以提高本地存储持久性，您可以使用本地存储容量进行纵向扩展或缩减。

  在不提供 Lambda 的区域，此作业类型称为*仅限本地存储*。

## 有关 Snowball Edge 作业的详细信息
<a name="jobdetails"></a>

在创建作业之前，请确保满足[先决条件](snowball-prereqs.md)。每个作业都由创建作业时指定的详细信息进行定义。下表描述了作业的所有详细信息。


****  

| 控制台标识符 | API 标识符 | 详细描述 | 
| --- | --- | --- | 
| 作业名称 | Description | 作业的名称，包含字母数字字符、空格或任何 Unicode 特殊字符。 | 
| 作业类型 | JobType | 作业类型：导入、导出或本地计算和存储。 | 
| 作业 ID | JobId | 用于标识作业的由 39 个字符组成的唯一标签。作业 ID 显示在电子墨水显示屏上的运输标签的底部和作业的清单文件名称中。 | 
| 地址 | AddressId | 设备的收货地址。如果使用 API，则此为地址数据类型的 ID。 | 
| 创建日期 |  CreationDate  | 您创建此作业的日期。 | 
| 送货速度 | ShippingOption | 送货速度取决于区域。有关更多信息，请参阅 [Snowball Edge 的配送速度](mailing-storage.md#shippingspeeds)。 | 
| IAM 角色 ARN | RoleARN | 此 Amazon 资源名称 (ARN) 是在创建任务期间创建的 AWS Identity and Access Management (IAM) 角色，具有对您的 Amazon S3 存储桶的写入权限。创建过程是自动的，您允许 AWS Snowball Edge 代入的 IAM 角色仅用于在您的 S3 存储桶和 Snowball 之间复制数据。有关更多信息，请参阅 [使用 AWS Snowball Edge 控制台所需的权限](access-control-managing-permissions.md#additional-console-required-permissions)。 | 
| AWS KMS 钥匙 | KmsKeyARN | 在中 AWS Snowball Edge， AWS Key Management Service (AWS KMS) 对每个 Snowball 上的密钥进行加密。在创建任务时，您还可以为自己拥有的 AWS KMS 加密密钥选择或创建 ARN。有关更多信息，请参阅 [AWS Key Management Service in AWS Snowball Edge](data-protection.md#kms)。 | 
| Snowball 容量 | SnowballCapacityPreference | 此任务中订购的 AWS Snowball Edge 设备的存储容量。可用尺寸取决于您的 AWS 区域。 | 
| 存储服务 | 不适用 | 与此任务相关的 AWS 存储服务，在本例中为 Amazon S3。 | 
| 资源 | Resources | 与您的任务关联的 AWS 存储服务资源。在此示例中，它们是从中传入或传出数据的 Amazon S3 存储桶。 | 
| 作业类型 | JobType | 作业类型：导入、导出或本地计算和存储。 | 
| Snowball 类型 | SnowballType | 此任务中订购的 Snowball Edge 设备类型。 | 
| 集群 ID | ClusterId | 用于标识集群的由 39 个字符组成的唯一标签。 | 

# Snowball Edge 作业的状态
<a name="jobstatuses"></a>

每个 AWS Snowball Edge 设备作业都有一个*状态*，该状态会更改为表示任务的当前状态。此作业状态信息不反映运行状况、当前处理状态或用于关联设备的存储。

**要查看作业的状态，请执行以下操作**

1. 登录 [AWS Snow 系列管理控制台](https://console.aws.amazon.com/snowfamily/home)。

1. 在**作业控制面板**上，选择作业。

1. 在控制台中单击您的作业名称。

1. “作业状态”窗格将位于顶部附近，该窗格反映作业的状态。


**AWS Snowball Edge 设备任务状态**  

| 控制台标识符 | API 标识符 | 状态描述 | 
| --- | --- | --- | 
| 作业已创建 | New | 您的作业刚刚已创建。您只能在该状态期间取消作业或作业部分（如果作业是导出作业）。 | 
| 正在准备设备 | PreparingAppliance | AWS 正在为你的工作准备一台设备。 | 
| 正在导出 | InProgress | AWS 正在将您的数据从 Amazon S3 导出到设备上。 | 
| 正在准备发运 | PreparingShipment | AWS 正准备向您配送一台设备。将为处于该状态的买家提供预期配送跟踪信息。 | 
| 运送给您的途中 | InTransitToCustomer | 已向您在作业创建期间提供的地址发运设备。 | 
| 已交付给您 | WithCustomer | 设备已送达您在作业创建期间提供的地址。 | 
| 正在运往 AWS | InTransitToAWS | 您已将设备运回至 AWS。 | 
| 位于分拣机构 | WithAWSSortingFacility | 用于此作业的设备位于我们内部的分拣机构。很快将开始对 Amazon S3 的导入作业执行所有附加处理，通常在 2 天内。 | 
| 在 AWS | WithAWS | 设备已送达 AWS。如果您要导入数据，则导入通常在设备送达后的一天内开始。 | 
| 正在导入 | InProgress | AWS 正在将您的数据导入亚马逊简单存储服务 (Amazon S3) Simple S3。 | 
| 已完成 | Complete | 您的作业或部分作业已成功完成。 | 
| 已取消 | Cancelled | 您的作业已取消。 | 

## Snowball Edge 集群作业的状态
<a name="clusterstatuses"></a>

每个集群都有一种*状态*，它会发生变化以指示集群的当前总体进程状态。集群的每个单独的节点都有其自己的作业状态。

此集群状态信息不反映运行状况、当前处理状态或用于集群或其节点的存储。


| 控制台标识符 | API 标识符 | 状态描述 | 
| --- | --- | --- | 
| 正在等待仲裁 | AwaitingQuorum | 因为没有足够的节点开始处理集群请求，所以尚未创建集群。要创建一个集群，必须需要至少五个节点。 | 
| 待处理 | Pending | 您的集群已创建，我们已准备运出节点。您可使用各节点的作业状态跟踪对应节点的状态。 | 
| 已交付给您 | InUse | 集群中至少有一个节点到达您在创建作业期间提供的地址。 | 
| 已完成 | Complete | 集群的所有节点都已返回到 AWS。 | 
| 已取消 | Cancelled | 已取消创建集群的请求。只有在集群进入待处理状态之前才可取消集群请求。 | 

# 使用 Snowball Edge 设备将数据导入 Amazon S3 的作业
<a name="importtype"></a>

在导入任务中，您的数据将使用内置的 Amazon S3 适配器或 NFS 挂载点复制到 AWS Snowball Edge 设备上。导入作业的数据来源应位于本地。换句话说，包含待传输数据的存储设备应实际位于您在创建作业时提供的地址。

在导入文件时，每个文件都会变成 Amazon S3 中的对象，并且每个目录都会变成前缀。如果将数据导入现有存储桶中，任何与新导入的对象具有相同名称的现有对象都将被覆盖。导入作业类型也具有本地存储和计算功能。此功能使用 NFS 接口或 Amazon S3 适配器来读取和写入数据，并根据设备本地运行的 Amazon S3 PUT 对象 API 操作触发 Lambda 函数。 AWS Snowball Edge 

将您的所有数据导入到中指定的 Amazon S3 存储桶后 AWS 云，将对设备 AWS 执行彻底擦除。此擦除遵循 NIST 800-88 标准。

完成导入后，可下载作业报告。此报告将提醒您无法导入的所有对象。您可以在成功日志和失败日志中查找更多信息。

**重要**  
请不要删除已传输数据的本地副本，直到您验证完作业完成报告结果并检查完导入日志。

# 使用 Snowball Edge 设备从 Amazon S3 导出数据的作业
<a name="exporttype"></a>

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

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

可以为每个导出作业导出任意数目的对象，使用的设备数目与为完成传输而使用的设备数目相同。导出任务的任务部件的每 AWS Snowball Edge 台设备都将依次交付，后续设备将在前一个任务部分进入 “正在**传输中” AWS状态后发送给**您。

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

当 AWS 收到退回的设备时，我们会按照 NIST 800-88 标准将其完全抹掉。

**重要**  
要导出到 Snow 设备的数据必须在 Amazon S3 中。您计划导出到 Snow 设备中的 Amazon Glacier 任何数据都必须先解冻或移至 S3 存储类别，然后才能导出。在创建 Snow 导出作业之前执行此操作。  
请不要更改、更新或删除导出的 Amazon S3 对象，直到您确认整个作业的所有内容均已复制到本地数据目标。

创建导出作业时，可导出整个 Amazon S3 存储桶或导出特定范围的对象键。

## 将数据导出到 Snowball Edge 设备时使用 Amazon S3 对象键
<a name="ranges"></a>

当您在 [AWS Snow 系列管理控制台](https://console.aws.amazon.com/snowfamily/home) 中或使用作业管理 API 创建导出作业时，可以导出整个 Amazon S3 存储桶或导出特定范围的对象键。对象键名称唯一标识存储桶中的对象。如果导出特定范围的对象键，您可以通过提供包含范围的起始值和/或包含范围的结束值，来定义范围的大小。

范围按 UTF-8 二进制排序。UTF-8 二进制数据按下列方式排序：
+ 数字 0-9 在大写和小写的英文字符之前。
+ 大写英文字符在所有小写英文字符之前。
+ 根据大写英文字符和数字排序时，小写英文字符在最后。
+ 在其他字符集内排序特殊字符。

有关 UTF-8 细节的更多信息，请参阅 [Wikipedia 上的 UTF-8](https://en.wikipedia.org/wiki/UTF-8)。

### 将数据导出到 Snowball Edge 设备时使用 Amazon S3 对象键的示例
<a name="range-examples"></a>

假定您有一个包含下列按 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* 排序在 *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  | 

假设您有这三个存储桶，并且想要从 **folder2** 中复制所有对象。
+ s3://bucket/folder1/
+ s3://bucket/folder2/
+ s3://bucket/folder3/


| 指定的范围开始 | 指定的范围结束 | 要导出的范围中的对象 | 
| --- | --- | --- | 
| folder2/ | folder2/ | 存储桶 folder2 中的所有对象。 | 

## 将数据从 Amazon S3 导出到 Snowball Edge 设备的作业的最佳实践
<a name="export-jobs-best-practices"></a>
+ 确保数据在 Amazon S3 中，在预定作业之前批量处理小文件
+ 如果您的存储桶中有数百万个对象，请确保在导出作业定义中指定密钥范围
+ 更新对象键以删除名称中的斜杠，因为名称中带有末尾斜杠（/或\$1）的对象不会传输到 Snowball Edge
+ 对于 S3 存储桶，对象长度限制为 255 个字符。
+ 对于启用版本的 S3 存储桶，仅导出对象的当前版本。
+ 不会导出删除标记。

# 有关使用 Snowball Edge 设备提供本地计算和存储功能的信息
<a name="computetype"></a>

本地计算和存储任务使您无需连接互联网即可在本地使用 Snowball Edge 上与 Amazon S3 兼容的存储。寄回设备后，您无法将数据从 Amazon S3 导出到设备，也无法将数据导入 Amazon S3。

**Topics**
+ [有关在 Snowball Edge 设备上本地存储数据的作业的信息](#aboutstorage)
+ [有关在 Snowball Edge 设备集群上提供本地存储的信息](#clusteroption)

## 有关在 Snowball Edge 设备上本地存储数据的作业的信息
<a name="aboutstorage"></a>

您可以使用 Snowball Edge 上的 Amazon S3 兼容存储或 S3 适配器在 AWS Snowball Edge 设备上读取和写入对象。订购设备时，如果您选择使用 S3 Adapter，则还需要选择在接收设备时包括哪些 Amazon S3 存储桶。如果您选择在 Snowball Edge 上使用与 Amazon S3 兼容的存储，则在收到亚马逊S3存储桶时，设备上不会包含任何亚马逊 S3 存储桶。

您可以在 Snowball Edge 设备上创建 Amazon S3 存储桶，以便在本地为需要本地数据访问、本地数据处理和数据驻留的应用存储和检索对象。Snowball Edge 上与 Amazon S3 兼容的存储提供了一种新的存储类别`SNOW`，它使用 Amazon S3 APIs，旨在在多台 Snowball Edge 设备上以持久和冗余的方式存储数据。您可以在 Snowball Edge 存储桶上使用与在 Amazon S3 上相同的功能，包括存储桶生命周期策略、加密 APIs 和标记。当一个或多个设备返回到时 AWS，在 Snowball Edge 上的 Amazon S3 兼容存储中创建或存储的所有数据都将被删除。有关更多信息，请参阅[仅限本地计算和存储作业](https://docs.aws.amazon.com/snowball/latest/developer-guide/computetype.html)。

有关更多信息，请参阅本指南中的 S [nowball Edge 上与 Amazon S3 兼容的存储](https://docs.aws.amazon.com/snowball/latest/developer-guide/s3compatible-on-snow.html)。

使用完设备后，将其返回到 AWS，设备将被删除。此擦除过程遵循美国国家标准与技术研究院（NIST）800-88 标准。

## 有关在 Snowball Edge 设备集群上提供本地存储的信息
<a name="clusteroption"></a>

集群是对 Snowball Edge 设备的逻辑分组（3 - 16 台设备）。集群是作为单个任务创建的，与其他 AWS Snowball Edge 任务相比，它提供了更高的耐久性和存储容量。有关集群作业的更多信息，请参阅本指南中的[集群概述](https://docs.aws.amazon.com/snowball/latest/developer-guide/ClusterOverview.html)。