elasticsearch 优化弹性搜索索引,elasticsearch,elasticsearch" /> elasticsearch 优化弹性搜索索引,elasticsearch,elasticsearch" />

elasticsearch 优化弹性搜索索引

elasticsearch 优化弹性搜索索引,elasticsearch,elasticsearch,由于磁盘空间不足,并且我的一个索引中有大量已删除的文档,我需要执行一个优化命令(ElasticSearch 1.7) 目前,该索引具有以下统计信息: 碎片:15*1 |文档:23165760 |大小:1.25TB 在优化完成之前,optimize API是否会阻止任何索引/查询操作 优化API会影响其他索引上的操作吗 有没有可能有一个大概的时间来知道需要多长时间 对不起,我的英语不好:) 如果你需要更多的数据,请告诉我 在优化完成之前,optimize API是否会阻止任何索引/查询操作 不

由于磁盘空间不足,并且我的一个索引中有大量已删除的文档,我需要执行一个优化命令(ElasticSearch 1.7)

目前,该索引具有以下统计信息:

碎片:15*1 |文档:23165760 |大小:1.25TB

  • 在优化完成之前,optimize API是否会阻止任何索引/查询操作
  • 优化API会影响其他索引上的操作吗
  • 有没有可能有一个大概的时间来知道需要多长时间
对不起,我的英语不好:)

如果你需要更多的数据,请告诉我

在优化完成之前,optimize API是否会阻止任何索引/查询操作

不,它可以并行运行,但索引过程将影响优化。将创建新的细分市场,这些细分市场也将进行优化

优化API会影响其他索引上的操作吗

不是直接使用,而是通过使用额外的CPU、内存和磁盘间接使用

有没有可能有一个大概的时间来知道需要多长时间

Nop:-),可能仅通过预先测试和推断文档/段的数量

请注意,优化将需要额外的磁盘空间。如果优化到非常少的段数,优化过程很可能最终会尝试优化一组非常大的段,这意味着它将需要额外的(大段1_大小+大段2_大小+…)磁盘空间。仅当生成的合并段完成时,才会删除旧段

另外,请查看备选方案


另一个建议是在集群上的负载较少时执行优化。正如我提到的,优化需要额外的CPU、内存和磁盘空间资源。

谢谢你,Andrei:)最终是否可能阻止优化过程?也许停止索引。是否有任何标志,我可以理解优化是否结束?我认为不可能停止优化。您可以使用
GET/\u nodes/stats/thread\u pool
检查是否存在活动优化,并查找
optimize
部分。似乎优化已结束。没有释放磁盘空间。我刚刚用kopf插件调用了optimize命令。我想没有设置expunge deletes参数。我是否必须发送命令:POST/my\u index/\u optimize?only\u expunge\u deletes=true我认为优化API将释放磁盘空间,即使没有该参数。您确定在该索引中已将文档标记为已删除吗?仅使用\u expunge\u deletes参数,所有操作都正常!:)现在我有更多的空闲磁盘空间,优化还在进行中。现在,从优化统计中,我看到队列是75个,完成了29个。线程数仅为1。是否可以设置更多的优化线程以更快的方式结束它?