本文介绍: 如果集群允许在最佳配置的大小方面使用每月索引,则无需保留每周索引,因为这会对性能产生负面影响,因为索引太多,并且需要对每个索引的结果进行整理。因此,优化的段将带来更好的搜索性能,因为每个分片的开销取决于段的数量和大小。根据集群大小,假设您的集群中有 10 个节点,您会选择为此索引设置 10 个主分片,以便在集群的节点之间均匀分布分片。每个的最大值给出了副本分片数量的真实值。如果需要增加并发度,可以根据节点上CPU的核心数增加用于搜索设置的线程池threadpool,并减少用于索引的threadpool。
当今世界,数据大量生成,为了利用数据进行生产,需要对提取的数据进行转换、存储、维护、管理和分析。这些过程只有通过大数据工具所基于的分布式架构和并行处理机制才能实现。Elasticsearch 是最流行的开源数据存储之一,可以满足大多数用例。
Elasticsearch是一个分布式数据存储和搜索引擎,具有容错和高可用性功能。为了充分利用 Elasticsearch 的搜索功能,需要正确配置。由于一个简单的配置并不适合所有用例,因此您需要首先提取您的需求,然后根据您的用例配置集群。本文将重点介绍 Elasticsearch 的搜索密集型初始配置和动态配置。
索引配置
默认情况下,Elasticsearch 索引有 5 个主分片,每个分片有 1 个副本。这种配置并不适合所有用例。需要正确计算分片配置以维持稳定高效的索引。
物理边界
分片大小对于搜索查询非常关键。如果分配给索引的分片太多,Lucene 段就会很小,这会导致开销增加。当同时进行多个查询时,大量小分片也会降低查询吞吐量。另一方面,太大的分片会导致搜索性能下降,并且故障恢复时间更长。因此,Elasticsearch建议1个分片的大小应该在20到40GB左右。
例如,如果您计算出索引将存储 300 GB 的数据,则可以为该索引分配 9 到 15 个主分片。根据集群大小,假设您的集群中有 10 个节点,您会选择为此索引设置 10 个主分片,以便在集群的节点之间均匀分布分片。
连续流
如果有数据流持续摄取到 Elasticsearch 集群,则应使用基于时间的索引来更轻松地维护索引。如果流的吞吐量随着时间的推移而变化,只需适当更改下一个索引的配置即可适当简化适应并使其能够轻松扩展。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。