gpt4 book ai didi

elasticsearch - 在Elasticsearch索引中存储MD5哈希的正确方法

转载 作者:行者123 更新时间:2023-12-02 23:52:44 28 4
gpt4 key购买 nike

我正在使用Elasticsearch创建自定义搜索API。我需要将MD5哈希存储在其中一个索引中。我还需要该字段可搜索。我应该如何索引/分析字段,以便搜索足够有效?
我需要查询足够快地工作以支持自动完成。

到目前为止,我已经将该字段映射为仅文本。
我正在使用“match_phrase_prefix”查询,该查询到目前为止效果良好。但是,我担心随着索引越来越多的文档而导致性能下降。
我还想使用“完成”建议映射,但这限制了我们对其他任何字段的过滤。因此,它将无法正常工作。
我还计划使用具有较低min_gram和较高max_gram值的'edge_ngram'分析器。注意,该映射的索引大小迅速增加。

最佳答案

由于MD5哈希由单个 token 组成,因此您无需使用match_phrase_prefix,而只需使用prefix。试试看。

还要注意,您可以通过使用context suggester而不是完成建议程序来绝对使用完成和过滤。但是,当然,您只能提供类别上下文或地理上下文,而不能提供日期范围或其他更多演变的过滤器/上下文。

如果您一直在搜索确切的MD5,则可以使用keyword类型。
但是,如果您要搜索MD5前缀(某些情况下+一些过滤器),则即使索引大小会增加,带有适当的edge-ngram分析器的text也会更好地工作。

在不了解您的用例的情况下,几乎可以说全部。

关于elasticsearch - 在Elasticsearch索引中存储MD5哈希的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56622679/

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