The index mapping:
"orgName": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
Part of my query like this :
{
"bool": {
"should": [
{
"match_bool_prefix": {
"orgName": {
"query": "island",
"operator": "AND",
"prefix_length": 0,
"max_expansions": 50,
"fuzzy_transpositions": true,
"boost": 1.0,
}
}
}
],
"adjust_pure_negative": true,
"boost": 1.0
}
}
But if I change the query to "island " with a trailing space, it will generate different results, specifically it calculate the score in different ways.
For the query without trailing space, the score is calculated as :
"value" : 1.0
"description": "orgName:island*",
"details": []
But for the query with trailing space, it is calculated as this:
"value": 10.185921,
"description": "weight(orgName:island in 45462) [PerFieldSimilarity], result of:",
"details": [
{
"value": 10.185921,
"description": "score(freq=2.0), computed as boost * idf * tf from:",
"details": [
{
"value": 2.2,
"description": "boost",
"details": []
},
{
"value": 6.9498363,
"description": "idf, computed as log(1 + (N - n + 0.5) / (n + 0.5)) from:",
"details": [
{
"value": 23,
"description": "n, number of documents containing term",
"details": []
},
{
"value": 24509,
"description": "N, total number of documents with field",
"details": []
}
]
},
{
"value": 0.6661975,
"description": "tf, computed as freq / (freq + k1 * (1 - b + b * dl / avgdl)) from:",
"details": [
{
"value": 2.0,
"description": "freq, occurrences of term within document",
"details": []
},
{
"value": 1.2,
"description": "k1, term saturation parameter",
"details": []
},
{
"value": 0.75,
"description": "b, length normalization parameter",
"details": []
},
{
"value": 4.0,
"description": "dl, length of field",
"details": []
},
{
"value": 5.127382,
"description": "avgdl, average length of field",
"details": []
}
]
}
]
}
]