您好,欢迎来到步遥情感网。
搜索
您的当前位置:首页HDFS 在写文件的过程中能否 ls 到正在写的文件?

HDFS 在写文件的过程中能否 ls 到正在写的文件?

来源:步遥情感网

原理:

上传本地文件到 HDFS 过程:

20G May 25 14:56 xx.tar
hdfs dfs -put xx.tar  /data/
hdfs dfs -ls /data/

/data/xx.tar._COPYING_

通过 java api 写文件:

org.apache.hadoop.fs.FileSystem#create 实际上已把元数据写到 editlog 了; -ls 就能看到一个 size = 0 的文件

org.apache.hadoop.fs.FSDataOutputStream.write & flush(close) 之后就可以 cat 到已写的内容,并且文件会有 size 大小

结论:

在 client protocol create 的时候 nn 就已经在 meta 数据中记录了创建的文件,所以在写的过程中肯定可以看到文件,但至于能不能看到当前的内容取决于 flush 的调用

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- obuygou.com 版权所有 赣ICP备2024042798号-5

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务