Elasticsearch非常长的字符串的完全匹配性能

时间:2016-12-29 00:37:39

标签: elasticsearch

我有一个用例:

我需要从单个网址中提取信息,并将每个部分保存为单独的数据单元,以便在不同的页面中显示。当用户访问页面中的数据单元时,我希望列出来自同一原始URL的所有其他数据单元。

我打算将原始网址字段定义为not_analyzed字符串字段,然后使用完全匹配来获取从原始网址中提取的所有部分。

我的问题是:

原始网址可能很长。弹性搜索对于非常长的字符串进行精确匹配的效率如何? elasticsearch是否使用某种散列算法(如git&)进行长字符串精确匹配?

这个用例会被大量使用,因此对我来说非常重要。

提前致谢。

1 个答案:

答案 0 :(得分:0)

要匹配not_analyzed字段中的确切文档您可以使用以下术语查询:

  

查找包含倒置中指定的确切术语的文档   指数。

例如:

POST _search
{
  "query": {
    "term" : { "url" : "google.com" } 
  }
}

我无法真正谈论表现。但是此查询将按原样匹配,并且不会对网址应用任何转换,因为它将是not_analyzed