AWS Snowball
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本指南适用于 Snowball Edge。如果您正在查找 Snowball 的相关文档,请参阅 AWS Snowball 用户指南

如何高效传输 PB 级数据

在位于您现场的 AWS Snowball Edge 设备与您的服务器之间传输 PB 级数据时,建议您根据以下指导原则制定传输计划并校准数据传输。

规划您的大型传输

要规划您的 PB 级数据传输,建议您采用以下步骤:

第 1 步:了解您要迁移到云中的数据

在使用 AWS Snowball Edge 设备创建第一个任务之前,您应明确了解要传输哪些数据、数据当前的存储位置以及要将数据传输到的目标位置。对于 PB 级或更大型的数据传输,在您的 AWS Snowball Edge 设备到达之前完成此类行政事务管理工作,您的任务将会更加顺利地完成。

您可将此数据保存在电子表格或白板中 — 它可以最大程度地帮助您整理计划迁移到 AWS 云的大量内容。如果您是第一次将数据迁移到云中,建议您设计一个云迁移模型。有关更多信息,请参阅 AWS 白皮书网站上的白皮书云迁移实用指南

完成此步骤后,您应了解要迁移到云中的数据总量。

第 2 步:计算您的目标传输速率

估算出您能够以多快的速度将数据传输到与各个服务器连接的 AWS Snowball Edge 设备,这一点很重要。这一估算出的速度即是您的目标传输速率。该速率指鉴于本地网络架构的实际情况,数据能以什么速度迁移到 AWS Snowball Edge 设备中。

注意

对于大型数据传输,建议使用 适用于 Snowball 的 Amazon S3 Adapter 传输您的数据。

要计算您的目标传输速率,请将一小部分具有代表性的数据传输到 Snowball Edge。在传输过程中,运行 snowballEdge status 命令以跟踪传输的进度。传输完成后,将已传输数据的大小与完成传输所用的时间进行比较以估算您当前的传输速度。

在确定您的目标传输速度时,请谨记您可以通过以下方式来更改速度:更改网络速度、所传输文件的大小以及从本地服务器读取数据的速度。适用于 Snowball 的 Amazon S3 Adapter 会以条件允许的最快速度将数据复制到 AWS Snowball Edge 设备。

步骤 3:确定您需要多少台 AWS Snowball Edge 设备

根据您在第 1 步确定的要迁移到云中的总数据量、第 2 步中估计的传输速度以及要将数据移至 AWS 中的天数来确定您需要多少 AWS Snowball Edge 设备才能完成大规模的数据迁移。请记住,AWS Snowball Edge 设备具有约 73 TB 可用空间。因此,如果您需要在 10 天内将 300 TB 数据移至 AWS 中,并且您的传输速度为 250 MB/秒,则需要 5 台 AWS Snowball Edge 设备。

步骤 4:创建您的任务

现在您已了解需要多少个 AWS Snowball Edge 设备,接下来就可以为各个设备创建导入任务了。由于每个 AWS Snowball Edge 设备导入任务仅涉及一个 AWS Snowball Edge 设备,因此,您需要创建多个导入任务。有关更多信息,请参阅创建您的第一个任务

第 5 步:将您的数据分为传输分段

对于包含多个任务的大型数据传输,其最佳实践是将数据分为数个易于管理的小型数据传输分段。如果您以这种方式划分数据,则可以一次传输一个分段,或并行传输多个分段。在规划分段时,请确保各个分段数据大小之和适合此任务的 AWS Snowball Edge 设备。在对传输数据分段时,请不要多次复制同一文件或目录。以下示例展示了如何将传输数据分段:

  • 对于 AWS Snowball Edge 设备,您可以将数据分为 9 个大小为 8 TB 的分段。

  • 对于大型文件,每个文件均可为一个分段,请记住 Amazon S3 中的对象的 5 TB 大小限制。

  • 各分段的大小可有所不同,每个单独的分段都可由相同类型的数据组成 — 例如,一个分段由小型文件组成,另一个分段由压缩存档文件组成,而另一个分段则由大型文件组成等。这种方法有助于确定不同类型文件的平均传输速率。

注意

对于传输的每个文件,均会执行元数据操作。不论文件大小,此开销都是相同的。因此,通过将小文件压缩为更大的捆绑包、批处理您的文件或传输更大的单个文件,您将获得更快的传输速度。

创建此类数据传输分段能够让您轻松快速地解决任何传输问题,因为在大型的异构传输运行一天或更长时间后尝试对该传输进行故障排除可能会很复杂。

在您完成 PB 级数据传输规划后,建议您将部分分段从服务器传输到 AWS Snowball Edge 设备,以便校准传输速度和总传输时间。

校准大型传输

您可以通过传输一组具有代表性的数据传输分段来校准大型传输。换句话说,选择您根据最后一个部分的指南定义的一些数据段并将它们传输到 AWS Snowball Edge 设备。同时,记录每个操作的传输速度和总传输时间。

在执行校准时,请监控来自 snowballEdge status 命令的信息。如果校准结果低于目标传输速率,您也许能够同时复制多个数据传输分段。在这种情况下,使用其他数据传输分段来重复校准。

在校准过程中继续添加其他并行复制操作,直到您发现当前正在传输数据的所有实例的总传输速度呈递减状态。此时,您可以终止最后一个活跃实例,并记下您的新目标传输速率。

有时,在以下场景之一中,使用 AWS Snowball Edge 设备传输数据的最快方式是并行传输数据:

  • 在单个 AWS Snowball Edge 设备上使用多个 适用于 Snowball 的 Amazon S3 Adapter 实例。

  • 在多个 AWS Snowball Edge 设备上使用多个 适用于 Snowball 的 Amazon S3 Adapter 实例。

在完成这些步骤后,您应知道能够以多快的速度将数据传输到 AWS Snowball Edge 设备。

管理 EC2 实例

要避免意外删除您在 设备 上创建的 Amazon EC2 实例,请勿从操作系统上关闭您的实例。例如,请勿使用 shutdownreboot 命令。从操作系统内关闭实例具有和调用 terminate-instances 命令相同的效果。

请改而使用 stop-instances 命令来暂停需要保留的 Amazon EC2 实例。