Storage Transfer Service 使用源存储系统提供的元数据(例如校验和与文件大小),以确保将读取自来源的数据写入 Cloud Storage。
当校验和元数据可用时
如果来源中提供校验和元数据,Storage Transfer Service 会使用端到端校验和验证。如果来源存储系统上的校验和元数据指示 Storage Transfer Service 收到的数据与源数据不匹配,则 Storage Transfer Service 会记录转移操作的失败。包含校验和元数据的存储系统示例包括大多数 Amazon Simple Storage Service (Amazon S3) 和 Microsoft Azure Blob Storage 对象(存在一些例外情况)和 HTTP 转移作业(校验和元数据由用户提供)。
当校验和元数据不可用时
当代理可以在来源附近运行时
如果底层来源存储系统中没有提供校验和元数据,但代理可以在来源存储系统附近在本地运行,则 Storage Transfer Service 会尝试读取源数据并计算校验和,然后再将数据发送到 Cloud Storage。在将数据从文件系统转移到 Cloud Storage 时,会发生这种情况。
当代理无法在来源附近运行时
如果底层来源存储系统中没有提供校验和元数据,并且代理无法在来源存储系统附近在本地运行,则 Storage Transfer Service 会使用可用的元数据(例如文件大小)来验证复制到 Cloud Storage 的文件是否与源文件匹配。
Storage Transfer Service 还会“实时”计算正在传输的数据的校验和。数据存储在 Cloud Storage 中后,Storage Transfer Service 会将计算出的校验和与 Cloud Storage 报告的最终校验和进行比较。如果校验和不匹配,任务会因 DATA_LOSS
错误而失败。
对于可能不提供校验和的来源(例如以下来源)的传输,系统会使用实时校验和:
在检查转移作业后
转移完成后,建议您执行其他数据完整性检查进行如下验证:
- 针对在来源更改的文件复制正确版本的文件。
- 复制了正确的一组文件和文件数量,以验证您是否正确设置了转移作业。
- 通过验证文件中的元数据(例如文件校验和、文件大小等)来确认已正确复制这些文件。