前言
这段时间在用hdfs,由于要处理的文件比较多,要及时删除旧文件,但是发现hdfs的blocks数一直在上涨,经分析是hdfs写入的速度较快,而block回收较慢,所以分心了一下hadoop删文件的流程,并做了调优,希望对遇到此类问题的程序猿们有帮助。
正文
经分析与查看源码发现,hdfs删除文件的流程是这样的:
(1)java程序中的DFSClient调用delete函数,删除文件
(2)NameNode将文件从他的namespace中删除
前言
这段时间在用hdfs,由于要处理的文件比较多,要及时删除旧文件,但是发现hdfs的blocks数一直在上涨,经分析是hdfs写入的速度较快,而block回收较慢,所以分心了一下hadoop删文件的流程,并做了调优,希望对遇到此类问题的程序猿们有帮助。
正文
经分析与查看源码发现,hdfs删除文件的流程是这样的:
(1)java程序中的DFSClient调用delete函数,删除文件
(2)NameNode将文件从他的namespace中删除