如何删除 /hadoop/hdfs/journal/hdfsha/current/ 下的非常大的文件

Posted

技术标签:

【中文标题】如何删除 /hadoop/hdfs/journal/hdfsha/current/ 下的非常大的文件【英文标题】:How to remove the very large files under /hadoop/hdfs/journal/hdfsha/current/ 【发布时间】:2021-01-20 06:57:48 【问题描述】:

在我们的 HDP 集群中 - 版本 2.6.5,带有 ambari 平台

我们注意到/hadoop/hdfs/journal/hdfsha/current/ 文件夹包括大文件和超过 1000 个文件

-rw-r--r--. 1 hdfs hadoop 494690334 Dec 28 11:37 edits_0000000017251672645-0000000017253719335
-rw-r--r--. 1 hdfs hadoop 524892007 Dec 28 12:37 edits_0000000017253719336-0000000017255810613
-rw-r--r--. 1 hdfs hadoop 509365350 Dec 28 14:17 edits_0000000017255810614-0000000017258005682
-rw-r--r--. 1 hdfs hadoop 526756290 Dec 28 15:07 edits_0000000017258005683-0000000017260117992

为了最小化日志编辑日志,我们可以使用以下内容作为 HDFS 的一部分 (hdfs-site.xml)

我们不确定 -dfs.namenode.num.extra.edits.retained 的意思是不是只保留 100 个文件

如果以下配置可以帮助清除多余的日志文件,请告知

dfs.namenode.num.extra.edits.retained=100
dfs.namenode.max.extra.edits.segments.retained=1
dfs.namenode.num.checkpoints.retained=1

参考 - https://www.ibm.com/support/pages/how-remove-very-large-files-under-hadoophdfsnamecurrent-biginsights-30-save-disk-space

【问题讨论】:

【参考方案1】:

要清除 jornal 编辑占用的空间,您就在正确的轨道上。但是值太少了,如果出现问题,您可能会丢失数据。

dfs.namenode.num.extra.edits.retaineddfs.namenode.max.extra.edits.segments.retained 的默认值分别设置为 100000010000

我建议以下值:-

dfs.namenode.num.extra.edits.retained=100000
dfs.namenode.max.extra.edits.segments.retained=100
dfs.namenode.num.checkpoints.retained=2

您可以找到所有这些参数详细信息here,值可以是任何值,具体取决于您必须选择的环境。

【讨论】:

'当 - dfs.namenode.num.extra.edits.retained=100000 时,是否意味着我们保留了 - 100000 个文件? 是的,这些是文件, 但为什么要 100000,为什么我们需要这么多?因为现在我们的这个数字少了 您可以减少这些,这些是编辑,以防 hdfs 服务崩溃,这些将帮助您尝试恢复数据。尽可能多地保留这些总是一个好习惯。但同样,这完全取决于您的环境。【参考方案2】:

有同样的问题,编辑开始在 NN 和日志节点中累积。原来standBy NN死了。看了文档发现编辑的合并和清理是standBy NN的责任。 在非 HA 模式下,执行此操作的是 SecondaryNN。 所以要确保你的standBy/Secondary NN运行正常。

【讨论】:

以上是关于如何删除 /hadoop/hdfs/journal/hdfsha/current/ 下的非常大的文件的主要内容,如果未能解决你的问题,请参考以下文章

hdp 集群问题解决记录

如何快速删除大批量数据

如何删除sqlserver数据库

如何删除多余的控件

如何删除FTP文件

如何恢复hadoop中被删除的文件