使用elasticsearch匹配作者和标题

时间:2013-05-21 15:04:52

标签: elasticsearch

我正在尝试根据作者和标题来匹配书籍。不幸的是,用作输入的标题和作者与弹性搜索中的标题和作者不同,单词的顺序不同,并且存在其他差异,因此我无法进行精确匹配。我的书记录有一个现场作者和标题。我想出了以下问题:

{
  "query":{
    "bool":{
      "must":{
        "query_string":{
          "query":"Not the Israel My Parents Promised Me"
        },
        "fuzzy":{
          "author":{
            "value":"Peka, Harvey",
            "boost":2
          }
        }
      }
    }
  },
  "from":1,
  "size":1
}

无论输入什么,它每次都给出相同的结果,所以看起来它有问题。我是以错误的方式去做的吗?

1 个答案:

答案 0 :(得分:1)

我将一些书籍和作者编入索引,然后尝试了这一点。为我工作了不同的组合,比如,混乱的单词和不完整的名字,甚至当一些单词不正确时,如下所示:

{
  "query": {
    "bool": {
      "must": [
        {
          "query_string": {
            "default_field": "book",
            "query": "The girl with the angel tattoo"
          }
        },
        {
          "query_string": {
            "default_field": "author",
            "query": "Steig Larsson"
          }
        }
      ]
    }
  }
}