fuzzy search - ElasticSearch multi_match query over multiple fields with Fuzziness -


how can add fuziness multi_match query? if search 'basball' still find 'baseball' articles. query looks this:

post /newspaper/articles/_search {     "query": {         "function_score": {             "query": {                 "multi_match": {                     "query": "baseball",                     "type": "phrase",                     "fields": [                         "subject^3",                          "section^2.5",                          "article^2",                          "tags^1.5",                         "notes^1"                     ]                 }             }         }     } } 

one option looking @ this, don't know if best option. important keep sorting based on scoring.

   "query" : {        "query_string" : {           "query" : "subject:basball^3 section:basball^2.5 article:basball^2",           "fuzzy_prefix_length" : 1        }     }  

suggestions?

to add fuzziness multiquery need add fuzziness property described here:

{     "query": {         "function_score": {             "query": {                 "multi_match": {                     "query": "baseball",                     "type": "phrase",                     "fields": [                         "subject^3",                          "section^2.5",                          "article^2",                          "tags^1.5",                         "notes^1"                     ],                     "fuzziness" : "auto",                     "prefix_length" : 2                  }             }         }     } } 

please notice prefix_length explained in doc as:

the number of initial characters not “fuzzified”. helps reduce number of terms must examined. defaults 0.

to check possible values of fuzziness please visit es docs.


Comments

Popular posts from this blog

css - SVG using textPath a symbol not rendering in Firefox -

Java 8 + Maven Javadoc plugin: Error fetching URL -

order - Notification for user in user account opencart -