【发布时间】:2020-06-03 11:04:36
【问题描述】:
在 Elasticsearch 中使用热/温架构,在多个索引上的搜索查询,具有索引模式或别名,在热和温节点上是否比使用简单架构更有效?
我的意思是热节点是查询中的限制因素还是热节点无论如何都会提高性能?
【问题讨论】:
标签: elasticsearch
在 Elasticsearch 中使用热/温架构,在多个索引上的搜索查询,具有索引模式或别名,在热和温节点上是否比使用简单架构更有效?
我的意思是热节点是查询中的限制因素还是热节点无论如何都会提高性能?
【问题讨论】:
标签: elasticsearch
热/暖架构的全部意义在于:
随着时间的推移,较旧的索引会从热(快)节点移动到暖(慢)节点,再到(甚至更慢)冷节点。
但是,如果您的搜索别名跨越所有索引(位于暖节点和热节点上),则查询性能可能与最慢的暖节点一样差。理想情况下,您应该至少有两个搜索别名:
search_recent)仅跨越热节点上的索引search_all)。这样,您对最近数据的大部分搜索(即在search_recent 上)只会命中热节点,但如果您想搜索较旧的数据,您也可以这样做(即在search_all 上)。
在前一种情况下,您可以预期查询会很快(因为只在热节点上运行),而在后一种情况下,您事先知道查询会更慢(因为在暖/冷节点上执行)。
【讨论】:
热温架构更适合时间序列数据(例如日志记录)。任何搜索最新数据的查询都会命中热节点并且速度很快。暖节点旨在处理大量不太可能被频繁查询的只读索引。
如果您的查询将同时命中热节点和热节点,那么整体查询性能将取决于最慢节点的性能。在这种情况下,这是暖节点的性能。在这种情况下,拥有非常快的热节点不会提高查询性能。
【讨论】: