首页 文章

如何调整Elasticsearch以使其快速编制索引?

提问于
浏览
1

我的ElasticSearch不会做一些复杂的查询 . 我使用ElasticSearch只是为了在大型数据集上进行快速搜索 .

它运行正常 . 搜索简单快捷 .

但随着索引中的文档变得庞大,添加新文档变得缓慢而缓慢 .

  • 当索引的大小很小时,添加/索引100万个文档大约需要250秒 .

  • 但是当相同索引的大小达到大约50 GB时,添加100万个文档大约需要1000秒 .

  • 当同一索引的大小达到100 GB时,添加100万个文档需要更长的时间 .

  • 有时在索引100万个文档的过程中,我可以看到弹性搜索连接错误,错误来自代码行附近的代码 . "//<2.0 "我刚刚爆炸" nonstructured exception" . 当我尝试将100万个文档索引到一个大索引(大约100 GB)时,我只看到这个错误 . 当索引大小较小时,我没有在日志中看到此错误 .

我想调整ElasticSearch集群以使其仍能快速返回搜索结果,但我也希望它能够快速索引/添加文档,即使索引达到100 GB或更大的大小 .

我会

  • 在一个集群中使用3个节点(我没有找到集群中节点数量的良好答案,因此有些文章建议的三个似乎是一个很好的数字)

  • 我会为每个索引使用5个分片1个副本 . (我也没找到好的号码,这是现在的默认号码)

  • 现在,我在一个群集上有5-10个索引,群集大小为1000 GB(使用300 GB) . 如果我运行一个索引一个集群(集群大小200 GB),而不是在1000 GB集群上运行10个索引,那么在索引和搜索方面性能会更好吗?

  • 我添加到索引中的文档是汇总的投影数据 . 该文件的字段数从6到12等 . 我把大部分领域的关键字数据类型,如果我做了较少的字段,比如只有一半的字段关键字,我能提高多少索引文件的速度? (在我的情况下,索引大小达到100 GB,每天我批量索引/添加100万个文档到索引 .

那么我可以对上述设置进行哪些更改以提高索引速度和性能,并减少错误,如过程中的Elasticsearch连接错误?

我正在使用AWS托管的Elasticsearch .

我还能做什么?

谢谢!

1 回答

相关问题