使hdfs计算本地文件的校验和

alen0pnh  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(585)

我正在尝试使用 hadoop fs -checksum . 但它只返回零。 [centos@sandbox tmp]$ hadoop fs -checksum file:///user/centos//a.json file:///user/centos/a.json NONE 我试过使用 hadoop fs -copyFromLocal a.json file:///user/centos/a.json 以便在本地文件夹中 /user/centos 生成 .a.json.crc file . 但是结果checksum仍然返回none。
如何让hadoop在本地计算校验和?

zujrkrfu

zujrkrfu1#

hadoop fs -checksum 当前无法从本地文件系统计算文件的校验和。潜在的解决方法包括:
apachejirahadoop-12326将本地文件系统上的支持文件作为 hadoop fs -checksum 命令。如果您现在真的需要该功能,那么您可以下载hadoop源代码,应用hadoop-12326附带的补丁,并按照building.txt中的说明创建自定义构建。请注意,apachehadoop社区尚未批准和提交该修补程序,因此使用该修补程序的风险由您自己承担。
如果您只是想在将文件从hdfs复制到本地文件系统时携带crc信息,那么您可以通过 -crc 对…的争论 get 命令。
例子:

hadoop fs -get -crc hello

ls -lrta 
...
-rw-r--r--   1 cnauroth                    cnauroth                       12 Jun 23 15:28 .hello.crc
-rw-r--r--   1 cnauroth                    cnauroth                        6 Jun 23 15:28 hello
...

相关问题