【发布时间】:2020-08-12 20:05:10
【问题描述】:
我有一个具有以下规格的弹性搜索节点:
我从索引中删除了几个文档,但我的磁盘空间似乎没有释放。上面的截图显示,Elasticsearch 中的实际文档仅占用 1.5GB,如disk.indices 所示,而disk.used 为 73.6GB。我发现仅删除文档并不会从elasticsearch中删除文档,而只会将其标记为已删除。我已尝试使用this answer 中提到的 forcemerge 释放磁盘空间,但我的磁盘空间仍然显示相同。
如何从 elasticsearch 中永久删除文档并释放磁盘空间?
【问题讨论】:
-
从主机的根文件夹运行
du -h会得到什么?你能看到磁盘空间被占用了吗? -
我可以看到
.文件夹已经占用了74GB,其他的都是MB或者KB。 -
你能运行这个只返回包含 GB 数据
du -h | grep -e '^\d*,\d*G'的文件夹吗? -
请检查 forcemerge 是否真的发生了。 _GET '/_cat/segments/{index_name}'。如果你正确运行 forcemerge,每个分片应该有 1 个段。
-
您无法强制合并,因为您的磁盘空间不足。问题不在 ES 中,而是在硬盘空间的其他地方被 ES 数据以外的东西占用。发现后可以删除,ES又可以正常工作了
标签: elasticsearch