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

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

Snowball Edge 任务的数据验证

下文提供有关 Snowball Edge 如何验证数据传输的信息,以及您可以在任务执行期间和之后用来确保数据完整性的手动步骤。

所传输数据的校验和验证

当您使用 适用于 Snowball 的 Amazon S3 Adapter 将文件从本地数据源复制到 Snowball Edge 时,将创建一些校验和。这些校验和用于在数据传输期间自动验证数据。

在较高层面,对于每个文件 (或大型文件的各个部分) 都会创建这些校验和。对于 Snowball Edge,当您针对设备上的存储桶运行 AWS CLI s3 ls 命令时,可以看到这些校验和。这些校验和用于在整个传输过程中验证数据的完整性,能确保数据正确复制。

如果这些校验和不匹配,我们不会将关联数据导入到 Amazon S3 中。

常见验证错误

验证错误是可能发生的。只要出现验证错误,相应数据 (一个文件或大型文件的一部分) 就不会写入目的地。造成验证错误的常见原因如下:

  • 尝试复制符号链接。

  • 尝试复制正被修改的文件。这不会导致验证错误,但会导致在传输结束时校验和不匹配。

  • 尝试复制大于 5 TB 的文件。

  • 尝试复制大小大于 512 MB 的部分。

  • 尝试将文件复制到数据存储容量已满的 Snowball Edge。

  • 尝试将文件复制到不遵守 Amazon S3 的对象键命名指导原则的 Snowball Edge。

只要发生任何一个验证错误,它就会被记录下来。您可以如以下几节所述执行相应步骤来手动识别未能通过验证的文件以及失败原因:

传输期间的 Snowball Edge 手动数据验证

您可以使用手动验证来检查您的数据是否已成功传输到 Snowball Edge。如果您在尝试传输数据后收到错误,也可以使用手动验证。请参考下面一节内容了解如何在 Snowball Edge 上手动验证数据。

当您使用 AWS CLI 运行 适用于 Snowball 的 Amazon S3 Adapter 来复制数据时,将生成日志。有一个手动验证选项可用于检查这些日志。这些日志保存在以下位置 (具体取决于您的文件系统):

  • WindowsC:/Users/<username>/.aws/snowball/logs/snowball_adapter_<year_month_date_hour>

  • Linux/home/.aws/snowball/logs/snowball_adapter_<year_month_date_hour>

  • Mac/Users/<username>/.aws/snowball/logs/snowball_adapter_<year_month_date_hour>

导入 Amazon S3 后的 Snowball Edge 手动数据验证

导入任务完成后,您可以如下所述使用多种选项来手动验证 Amazon S3 中的数据。

检查任务完成报告和相关日志

每当对 Amazon S3 导入或导出数据时,您都将获得一个可下载的 PDF 任务报告。对于导入任务,该报告在导入过程结束时提供。有关更多信息,请参阅 从控制台中获取任务完成报告和日志

S3 清单

如果您通过多个任务将大量数据传输到 Amazon S3 中,则浏览每一个任务完成报告可能效率不高。相反,您可以获取一个或多个 Amazon S3 存储桶中所有对象的清单。Amazon S3 清单每天或每周提供一个逗号分隔值 (CSV) 文件,它显示您的对象及其相应的元数据。此文件包含 Amazon S3 存储桶或共享前缀的对象 (即名称以通用字符串开头的对象)。

一旦您获得了您向其中导入了数据的 Amazon S3 存储桶的清单,就可以轻松将它与您在源数据位置传输的文件进行比较。通过这种方法,您可以快速识别哪些文件未传输。

使用 Amazon S3 sync 命令

如果您的工作站可以连接 Internet,则您可以运行 AWS CLI 命令 aws s3 sync 对传输的所有文件执行最终验证。此命令可同步目录和 S3 前缀。此命令以递归方式将源目录中的新文件和更新过的文件复制到目的地。有关更多信息,请参阅 https://docs.amazonaws.cn/cli/latest/reference/s3/sync.html

重要

如果您指定本地存储作为此命令的目的地,请确保您拥有所同步的文件的备份。这些文件将由指定 Amazon S3 源中的内容覆盖。