我们有月度索引(目前为11个月),每个索引有22个分片。我看到每个索引似乎有很多段(大约1200到1380段)。较旧的索引应该很少,如果有任何更新。从我读过的所有内容来看,听起来ES应该自动合并段,但现在我有点担心这不会发生。我知道我们可以手动运行优化,但需要分配另一个资源来完成这项工作(以免影响当前系统)。我是ES的新手(如果这不是很明显),我真的想知道我们是否有问题。也可能是我们需要将index.merge.policy.segments_per_tier调整为小于10.真的不确定。
粗略的指数统计数据:
11个索引 每个索引22个分片 每个索引6500万个文档 每个索引350 GB
非常感谢任何信息,建议等。
谢谢,
取值
答案 0 :(得分:2)
您现在可以执行的最佳步骤,尤其是基于时间的索引,是手动优化未写入的索引。您肯定会看到性能方面的改进。存在的段越多,使用的堆内存就越多。
ES会自动合并细分,但是某些条件应该适用于Lucene合并细分(细分的大小,已删除文档的数量,几乎相同大小的细分数量等)。过去版本中存在与合并相关的问题,但不确定是否正在进行合并。
当您认为群集上的负载不是那么高时,您可以尝试每天优化单个索引。您可能知道Curator可以用于此操作和其他操作。