1

我正在考虑在拥有大量记录multi-index的集群中从一个索引转移到基于天的索引 ( ) 。Elasticsearch

实际的问题是它如何影响 ES 集群中的索引、搜索和映射的性能?

搜索一个巨大的索引比搜索数百个大索引需要更多时间吗?

4

2 回答 2

2

搜索一个大型索引而不是数百个较小的索引将花费更少的时间。

如果您主要只搜索一个已分解的索引,那么以这种方式分解索引可能有助于提高性能。就您而言,如果您最常需要搜索在特定日期添加的记录,那么在性能方面您可能会有所帮助。如果您主要在整个索引范围内进行搜索,通常最好在单个整体索引中进行搜索。

于 2012-10-19T21:18:42.890 回答
1

最后,我们ES在我们公司实施了多索引。对于我们的应用程序,我们选择了每月索引策略,因此我们每个月都会创建一个新索引。

当然,正如@femtoRgon 所建议的那样,搜索所有较小的索引需要更多的时间,但由于其逻辑,应用程序的速度已经提高。

所以,我对所有想要从一个索引转向多个索引的人的建议是:研究您的应用程序需求并选择整个索引的适当部分(如果确实需要)。

例如,我可以分享一些我们应用程序的研究结果,这有助于我们决定使用月度指数:

  • 我们 90-95% 的查询仅针对过去 3 个月
  • 我们有大约 4 大组查询:今天、上周、上个月和最近 3 个月(当然,我们可以创建每周或每日索引,但它们太小了,因为我们里面没有足够的文档)
  • 如果他在整个期间(所有索引)进行“非常规”查询,我们可以向客户解释为什么他需要等待。
于 2012-12-27T09:36:23.863 回答