通过JindoDistCp从HDFS迁移到OSS-HDFS的文件,可以进行文件内容检验。本文为您介绍文件内容校验的操作步骤。
使用限制
仅JindoData 4.6.2及以上版本支持。
操作步骤
- 计算输出通过JindoDistCp迁移的目标目录和源目录的文件checksum,命令格式如下。
其中参数说明如下:jindo distjob -checksum --src <src> --dest <dest> --blockSize <blockSize> --recalculate
参数 描述 必填 默认值 说明 --src <src> 待文件内容校验的路径。 是 无 src只能为OSS-HDFS或HDFS路径。 --dest <dest> 输出checksum文件的目标路径。 是 无 无。 --blockSize <blockSize> 源文件写入的blockSize。 否 134217728 单位为Byte。 --recalculate 是否读取文件重新计算checksum。 否 默认不会重新计算,从OSS-HDFS读取写入时计算的checksum。 仅当 --src
参数值为OSS-HDFS时支持。计算输出通过JindoDistCp迁移的目标目录的文件checksum。
例如,OSS-HDFS的bucket名为dlsbucket,需要文件内容校验的目录为oss://dlsbucket/test,输出checksum文件到OSS目录 oss://ossbucket/test-dls,此时命令如下所示。jindo distjob -checksum --src oss://dlsbucket/test --dest oss://ossbucket/test-dls --recalculate
- 计算输出通过JindoDistCp迁移的源目录的文件checksum。
例如,JindoDistCp的源目录为hdfs:///test,输出checksum文件到OSS目录oss://ossbucket/test-hdfs,此时命令如下所示。
jindo distjob -checksum --src hdfs:///test --dest oss://ossbucket/test-hdfs
- 通过JindoDistCp
--diff
对比步骤1中的步骤a和b输出的文件checksum目录内容。示例如下:hadoop jar jindo-distcp-tool-${version}.jar --src oss://ossbucket/test-hdfs --dest oss://ossbucket/test-dls --diff