gpt4 book ai didi

elasticsearch - 为什么用like和or搜索时Elastic的速度慢?

转载 作者:行者123 更新时间:2023-12-03 00:49:12 24 4
gpt4 key购买 nike

我在大数据上使用Elastic进行搜索。 (超过十亿行,但只有两列:id和caption)

当我搜索id关键字时,它很快,但是如果我在带有“like”的标题上搜索文本,则需要花费很长时间。

慢速搜索案例:

       CAPTION LIKE '%TES%'
OR CAPTION LIKE '%ASD%'
OR CAPTION LIKE '%DSSS%'
OR CAPTION LIKE '%VBCVB%'
OR CAPTION LIKE '%ASDAS%'
OR CAPTION LIKE '%GDGDF%'

提前致谢

最佳答案

因为您必须对整个索引进行全面扫描,以检查每个术语是否匹配。
这就是为什么它在文档中明确指出它很慢。

如果想要更快的结果,最好使用基于ngram的策略,但这会带来索引时间更多的时间来索引内容和更多磁盘空间。

一种折衷办法可能是不使用第一个%符号,例如:

   CAPTION LIKE 'TES%'
OR CAPTION LIKE 'ASD%'
OR CAPTION LIKE 'DSSS%'
OR CAPTION LIKE 'VBCVB%'
OR CAPTION LIKE 'ASDAS%'
OR CAPTION LIKE 'GDGDF%'

这样,Elasticsearch可以进行一些优化,该优化将不检查索引中的每个单项,而仅检查一个子集。

关于elasticsearch - 为什么用like和or搜索时Elastic的速度慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56001437/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com