【问题标题】:How can limit the content of the particular document hit on elastic search?如何限制特定文档的内容命中弹性搜索?
【发布时间】:2016-07-27 02:29:05
【问题描述】:

{ "user": "dilbert", "postDate": "2011-12-12", "content": "Distribution is hard. Distribution should be easy." , "title": "On distributed search" }

现在如果对此文档进行搜索查询。我得到了全部内容。可以说,如果内容很大,我只想要内容的特定部分获得点击。什么是 API?我在弹性搜索的文档中找不到它来限制大小或线条。

谢谢

【问题讨论】:

    标签: java search elasticsearch


    【解决方案1】:

    您可以通过将size 添加到您的根对象来限制结果集的大小(结果数),即

    {
      "size": 5,
      "query": {
         ...
      }
    }
    

    如果每个结果都太大而你只想获取特定的字段,你可以这样做:

    {
      "_source": {
        "include": [ "field1", "field2" ],
        "exclude": [ "field3" ]
      },
      "query": {
        ...
      "
    }
    

    【讨论】:

    • 是的,这是文档命中数。那么限制字段内容的大小呢?
    【解决方案2】:

    好的,我通过 Highlight API 得到了它。您不能限制特定字段的内容大小或字符限制。

    这样你只能得到附近的字符,你可以配置你的字符大小。

    { "query" : {...}, "highlight" : { "number_of_fragments" : 3, "fragment_size" : 150, "tag_schema" : "styled", "fields" : { } }

    【讨论】:

      猜你喜欢
      • 2016-10-08
      • 2017-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-15
      • 1970-01-01
      • 2020-10-02
      • 2018-11-05
      相关资源
      最近更新 更多