gpt4 book ai didi

elasticsearch - Elasticsearch forcemerge 和磁盘空间问题

转载 作者:行者123 更新时间:2023-12-03 00:46:32 26 4
gpt4 key购买 nike

我是 Elasticsearch 的新手,所以不要责怪我。
情况是这样的,服务器的日志空间几乎用完了,剩下大约 400 MB。我不得不删除两年前的旧日志,但事实证明,它只是将它们标记为已删除,但实际上是在自动合并期间在后台删除它们。我试图清理的索引正在积极用于写入日志,但为了释放磁盘空间,我决定运行 POST /logging/_forcemerge?only_expunge_deletes=true .通过GET _tasks?detailed=true&actions=*forcemerge ,我看到任务正在运行,但是 2 个小时没有发生任何事情。这个地方没有空出来,感觉不值得进行强制合并并听取论坛和网站上有关此程序的所有评论。

问题本身。

  • 有什么办法可以找出强制合并将持续多长时间?
  • 据我了解,我关闭了写入该索引的服务器,在强制合并期间不值得写入索引吗?
  • 由于我使用参数 only_expunge_deletes=true 只合并已删除文档的段,这会影响按索引搜索吗?
  • 在这种情况下不会出现的最佳实践是什么?
  • 最佳答案

    1. Is there any way I can find out how long force merge will last?


    不,抱歉,强制合并不会报告任何有关其进度的信息。

    1. I turned off the servers that write to this index, as I understand it, is it not worth writing to the index during force merge?


    强制合并是 generally only useful when you will never again write to an index .没有理由仅在合并期间停止写入索引,但相反,如果您希望继续写入索引,则根本不建议强制合并它。

    1. Since I used the parameter only_expunge_deletes=true to merge only segments with deleted documents, will this affect the search by index?


    合并通常有利于搜索,这就是 Elasticsearch(实际上是 Lucene)在后台进行合并的原因。但是,强制合并可能会在将来破坏通常的自动合并过程,这就是为什么建议不要对将看到 future 写入的索引执行此操作。

    1. What is the best practice that would not arise in such situations?


    鉴于您正在索引日志,我认为您缺少的一个好习惯是使用基于时间的索引:每隔一段时间(例如每月)启动一个名称包含日期(例如月份和年份)的新索引。 Elasticsearch 允许您一次搜索多个索引(可能使用通配符或 alias)。然后,您可以单独管理这些索引的生命周期(甚至还有 feature for automatic index lifecycle management ),其中包括在旧索引达到合适的年龄时删除它们。删除索引中的文档子集成本高昂且不一定节省空间,但删除整个索引成本低且可立即释放空间。

    关于elasticsearch - Elasticsearch forcemerge 和磁盘空间问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60025653/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com