elasticsearch OpenSearch查询间歇性响应缓慢

h43kikqp  于 2023-01-29  发布在  ElasticSearch
关注(0)|答案(1)|浏览(271)

版本(相关-OpenSearch/ Jmeter 板/服务器操作系统/浏览器):
开放搜索1.1
描述问题:
查询响应间歇性缓慢。
配置:
群集:数据节点示例类型www.example.com(3)专用主节点:c5.large.searchEBS EBS卷类型:通用(SSD)-gp2 EBS大小:r4.large.search (3) Storage Type : EBS EBS Volume Type : General Purpose (SSD) - gp2 EBS Size : 10 GiB
相关日志或屏幕截图:
集合大小为1MB;具有以下设置:
{"规格_过程_组合_表达式":{"设置":{"指标":{"刷新间隔":"86400 s","碎片数量":"5"、"插件":{"索引状态管理":{"翻转_跳过":"真"}},"提供的名称":"规范处理组合表达式"、"创建日期":"1671629334835","副本的数量":"2"、"uuid":"aht704QQTV6WtozcVCfi1A","版本":{"创建":"135227827 "}}}
查询运行:GET规范_proc_comb_exp/_ search {"查询":{"布尔":{"必须":[{"多重匹配":{"查询":"凹痕"、"字段":["名称","别名_术语"],"模糊性":"4 "}}],"过滤器":{"匹配短语":{"类别":"专业"}}}}
问题:我们正在使用OpenSearch作为后端来执行UI搜索栏的精确/模糊匹配。当前使用的索引非常小,只有1MB。我们发现响应时间不稳定的问题。大多数情况下,响应时间约为100ms;但有时间歇地(10%)为约1000ms或更高。
请求Maven请帮助解决这个问题。我是新的开放搜索或任何搜索技术。
已尝试查看群集配置。需要详细的故障排除步骤指导。这将非常有帮助。

i7uq4tfw

i7uq4tfw1#

以下是一些提高性能的注意事项。
1.将number_of_shards设置为1
建议将碎片大小保持在10- 50 GB之间。为此,您可以将数据重新索引到具有1个主碎片的新索引中。
1.使用term查询而不是match_phrase
如果不需要全文搜索功能,可以使用term查询,术语查询比match_phrase快。
1.减少fuzziness或删除它,如果你可以
模糊查询是一个开销很大的查询。如果可以减少模糊查询的开销,则查询返回的速度会更快。
您可以启用慢速日志来检测慢速搜索日志。
注意:你的硬件看起来不错。

相关问题