我的ElasticSearch不会执行一些复杂的查询。我使用ElasticSearch只是为了在大型数据集上实现快速搜索性能。
运行正常。搜索简单快捷。
但是随着索引中的文档变得庞大,添加新文档变得越来越慢。
我想调整ElasticSearch集群以使其仍然快速返回搜索结果,但我也希望它能够即使在索引大小达到100 GB或更大时也能快速索引/添加文档。
我会
那么我可以对上述设置进行哪些更改以提高索引速度和性能,并减少过程中的诸如Elasticsearch连接错误之类的错误?
我正在使用AWS托管的Elasticsearch。
我还能做什么?
谢谢!
答案 0 :(得分:1)
在为文档建立索引时,您的es集群也会尝试将数据同步到其他节点。为了获得更好的索引性能,可以进行一些改进。
1-索引时设置较大的refresh_interval。这将延迟跨节点的数据同步,并使索引编制更快。
2-在批量编制索引的同时,保持最佳批次大小。
3-正确设置堆大小,例如对于64Gb节点,31 Gb应该是最佳堆。有关详细信息-https://www.elastic.co/guide/en/elasticsearch/guide/current/heap-sizing.html
4-增加文件描述符和MMap-https://www.elastic.co/guide/en/elasticsearch/guide/current/_file_descriptors_and_mmap.html
5-如果在摄取时转换数据,则可以使用专用的摄取节点-https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html
6-禁用复制(可以在建立大索引后启用它)