我有一个用例:
我需要从单个网址中提取信息,并将每个部分保存为单独的数据单元,以便在不同的页面中显示。当用户访问页面中的数据单元时,我希望列出来自同一原始URL的所有其他数据单元。
我打算将原始网址字段定义为not_analyzed字符串字段,然后使用完全匹配来获取从原始网址中提取的所有部分。
我的问题是:
原始网址可能很长。弹性搜索对于非常长的字符串进行精确匹配的效率如何? elasticsearch是否使用某种散列算法(如git&)进行长字符串精确匹配?
这个用例会被大量使用,因此对我来说非常重要。
提前致谢。
答案 0 :(得分:0)
要匹配not_analyzed字段中的确切文档您可以使用以下术语查询:
查找包含倒置中指定的确切术语的文档 指数。
例如:
POST _search
{
"query": {
"term" : { "url" : "google.com" }
}
}
我无法真正谈论表现。但是此查询将按原样匹配,并且不会对网址应用任何转换,因为它将是not_analyzed
。